=head2 get_usertag
my %ut = get_usertag('don@donarmstrong.com','this-bug-sucks','eat-this-bug');
+ my %ut = get_usertag('don@donarmstrong.com');
Returns a hashref of bugs which have the specified usertags for the
user set.
+In the second case, returns all of the usertags for the user passed.
+
=cut
use Debbugs::User qw(read_usertags);
my $version = shift;
my $isbinary = shift;
return unless defined $version;
- undef $package if $package =~ m[(?:\s|/)];
- my $source = $package;
-
- if (defined $package and $isbinary) {
- my @srcinfo = binarytosource($package, $version, undef);
- if (@srcinfo) {
- # We know the source package(s). Use a fully-qualified version.
- removefixedversions($data, $_->[0], $_->[1], '') foreach @srcinfo;
- return;
- }
- # Otherwise, an unqualified version will have to do.
- undef $source;
- }
foreach my $ver (split /[,\s]+/, $version) {
- my $sver = defined($source) ? "$source/$ver" : '';
- @{$data->{fixed_versions}} =
- grep { $_ ne $ver and $_ ne $sver } @{$data->{fixed_versions}};
+ if ($ver =~ m{/}) {
+ # fully qualified version
+ @{$data->{fixed_versions}} =
+ grep {$_ ne $ver}
+ @{$data->{fixed_versions}};
+ }
+ else {
+ # non qualified version; delete all matchers
+ @{$data->{fixed_versions}} =
+ grep {$_ !~ m[(?:^|/)\Q$ver\E$]}
+ @{$data->{fixed_versions}};
+ }
}
}
}
# Incomming Mail Message
my ($received,$hostname) = $record->{text} =~ m/Received: \(at (\S+)\) by (\S+)\;/;
- $output .= qq|<hr><p class="msgreceived"><a name="$msg_number"></a><a name="msg$msg_number">Message received</a> at |.
- html_escape("$received\@$hostname") . q| (<a href="| . bug_url($ref, msg=>$msg_number) . '">full text</a>'.q|, <a href="| . bug_url($ref, msg=>$msg_number,mbox=>'yes') .'">mbox</a>)'.":</p>\n";
+ $output .= qq|<hr><p class="msgreceived"><a name="$msg_number"></a><a name="msg$msg_number"></a><a href="#$msg_number">Message</a> received at |.
+ html_escape("$received\@$hostname") .
+ q| (<a href="| . bug_url($ref, msg=>$msg_number) . '">full text</a>'.
+ q|, <a href="| . bug_url($ref, msg=>$msg_number,mbox=>'yes') .'">mbox</a>)'.":</p>\n";
$output .= handle_email_message($record->{text},
ref => $bug_number,
msg_number => $msg_number,
- Allow selecting both archived and unarchived bugs (closes: #320175)
- Support intersecting sets of bugs (closes: #164421)
- Allow selecting the newest N bugs (closes: #84681)
+ - Add anchor links to specific messages (closes: #431450)
+ - Add missing newline after indicating what the user is (closes: #432466)
-- Colin Watson <cjwatson@debian.org> Fri, 20 Jun 2003 18:57:25 +0100
next;
}
if (not $indicated_user and defined $user) {
- &transcript("User is $user");
+ &transcript("User is $user\n");
$indicated_user = 1;
}
while (++$procline <= $#bodylines) {
$indicated_user = 1;
} elsif (&setbug) {
if (not $indicated_user and defined $user) {
- &transcript("User is $user");
+ &transcript("User is $user\n");
$indicated_user = 1;
}
&nochangebug;
# -*- mode: cperl;-*-
-use Test::More tests => 3;
+use Test::More tests => 5;
use warnings;
use strict;
$data = dclone(\%data);
removefoundversions($data,$data->{package},'bar/1.00');
is_deeply($data->{found_versions},['1.00','1.34'],'removefoundversions removes only bar/1.00 versions');
+$data = dclone(\%data);
+addfoundversions($data,$data->{package},'1.45');
+is_deeply($data->{fixed_versions},['bar/1.02'],'addfoundversions removes fixed versions');
+is_deeply($data->{found_versions},['bar/1.00',
+ '1.00',
+ '1.34',
+ 'foo/1.45',
+ ],,'addfoundversions adds found versions');