qw(maybelink htmlize_addresslinks htmlize_maintlinks),
],
util => [qw(cgi_parameters quitcgi),
- qw(getpseudodesc)
],
misc => [qw(maint_decode)],
#status => [qw(getbugstatus)],
our $_maintainer;
our $_maintainer_rev;
-our $_pseudodesc;
-sub getpseudodesc {
- return $_pseudodesc if $_pseudodesc;
- my %pseudodesc;
-
- my $pseudo = new IO::File $config{pseudo_desc_file},'r'
- or &quitcgi("Unable to open $config{pseudo_desc_file}: $!");
- while(<$pseudo>) {
- next unless m/^(\S+)\s+(\S.*\S)\s*$/;
- $pseudodesc{lc $1} = $2;
- }
- close($pseudo);
- $_pseudodesc = \%pseudodesc;
- return $_pseudodesc;
-}
-
-
=head2 bug_links
bug_links($one_bug);
@EXPORT = ();
%EXPORT_TAGS = (util => [qw(getbugcomponent getbuglocation getlocationpath get_hashname),
qw(appendfile buglog getparsedaddrs getmaintainers),
- qw(getmaintainers_reverse)
+ qw(getmaintainers_reverse),
+ qw(getpseudodesc),
],
misc => [qw(make_list)],
date => [qw(secs_to_english)],
return $_maintainer if $_maintainer;
my %maintainer;
my %maintainer_rev;
- for my $file (@config{qw(maintainer_file maintainer_file_override)}) {
+ for my $file (@config{qw(maintainer_file maintainer_file_override pseduo_maint_file)}) {
next unless defined $file;
my $maintfile = new IO::File $file,'r' or
&quitcgi("Unable to open $file: $!");
return $_maintainer_rev;
}
+=head2 getpseudodesc
+
+ my $pseudopkgdesc = getpseudodesc(...);
+
+Returns the entry for a pseudo package from the
+$config{pseudo_desc_file}. In cases where pseudo_desc_file is not
+defined, returns an empty arrayref.
+
+This function can be used to see if a particular package is a
+pseudopackage or not.
+
+=cut
+
+our $_pseudodesc;
+sub getpseudodesc {
+ return $_pseudodesc if $_pseudodesc;
+ my %pseudodesc;
+
+ if (not defined $config{pseudo_desc_file}) {
+ $_pseudodesc = {};
+ return $_pseudodesc;
+ }
+ my $pseudo = IO::File->new($config{pseudo_desc_file},'r')
+ or die "Unable to open $config{pseudo_desc_file}: $!";
+ while(<$pseudo>) {
+ next unless m/^(\S+)\s+(\S.*\S)\s*$/;
+ $pseudodesc{lc $1} = $2;
+ }
+ close($pseudo);
+ $_pseudodesc = \%pseudodesc;
+ return $_pseudodesc;
+}
+
+
=head1 DATE
my $english = secs_to_english($seconds);
use Debbugs::Config qw(:globals :text :config);
use Debbugs::User;
use Debbugs::CGI qw(version_url maint_decode);
-use Debbugs::Common qw(getparsedaddrs :date make_list getmaintainers);
+use Debbugs::Common qw(getparsedaddrs :date make_list getmaintainers getpseudodesc);
use Debbugs::Bugs qw(get_bugs bug_filter newest_bug);
use Debbugs::Packages qw(getsrcpkgs getpkgsrc get_versions);
use Debbugs::Status qw(:status);
html_escape("http://${debbugs::gWebDomain}/Reporting${debbugs::gHTMLSuffix}");
}
if (not $maint and not @bugs) {
- print "<p>There is no record of the " .
- ($srcorbin eq 'binary' ? html_escape($package) . " package"
- : html_escape($src) . " source package").
+ print "<p>There is no record of the " . html_escape($package) .
+ ($srcorbin eq 'binary' ? " package" : " source package") .
", and no bugs have been filed against it.</p>";
$showresult = 0;
}