Man Linux: Main Page and Category List

NAME

       yaclc - check the bug closings in a Debian changelog

SYNOPSIS

       yaclc [-i /path/to/index.db] [-dhvnelp] changes-file

ARGUMENTS

       -i file
           Use file as an index, greatly reducing load on the BTS, and greatly
           increasing the speed of processing.  yaclc tries using this file
           before it tries any other method of getting info about the bug.  If
           you are on an official Debian machine (something.debian.org), a
           useful argument might be ’-i
           /org/bugs.debian.org/spool/index.archive’ or .../index.db.

       -d  Print debugging output.  Implies -v.

       -h  Print a usage message.

       -v  Be verbose.

       -n  No HTTP queries.  To disable LDAP queries simply don’t specify the
           -l option.  Useful if you are not connected to the ’net but do have
           a local index.db file.

       -e  Only print output on errors (when no bug by that id can be found,
           or when the bug does not belong to the same package as the
           changelog.)

       -l  Use LDAP to query the BTS before trying HTTP.

       -p  Before the list of bugs, print a space-separated list of binary and
           source packages that changes-file describes.  Note that bugs that
           belong to the pseudo-package wnpp are treated as belonging to the
           correct package, but "wnpp" is not printed here.

       changes-file
           A .changes file, or a changelog in Debian format.  A .changes file
           works better for multi-binary packages.  To read from STDIN, this
           option may be omitted or be ‘-’.

OUTPUT

       Outputs lines of the following form:

       bug-number package bit

       where bug-number is a bug number, as used in the BTS, package is the
       package to which the bug belongs, or ‘[unknown-package]’ if the bug
       does not have a package.  bit is 1 if package is one of the packages
       which the changes file describes or is wnpp, or 0 otherwise.  If yaclc
       cannot look up the bug because it cannot access a server, bit will be
       set to 1 because it should only be 0 if the bug definitely belongs to a
       different package.  If, however, there is a Bug Tracking System Error,
       bit will be 0 because the Error is usually that the bug doesn’t exist.
       The Author thinks that this is the Right Thing, but is probably
       persuadable if you care enough to talk to him.

       To parse this output, you might use something like this:

           @lines = <YACLC>;
           foreach (@lines) {
               m/^(\d+) (\S+) (0│1)$/;
               my ($bugid, $package, $is_proper) = ($1, $2, $3);
               # do processing here...
           }

EXIT CODE

       yaclc returns 1 if any bugs were found that belong to the wrong package
       or don’t seem to exist, and 0 otherwise.  This is to facilitate use in
       scripts, something like this:

           yaclc -e ../foobar.changes ││ echo "Look at your changelog once more!"

       which will print all the bad bugs, and "Look at your changelog..." if
       there are any bad ones.

BUGS

       Bugs should be reported using the Debian bug-tracking system, available
       at http://bugs.debian.org/.

SEE ALSO

       dpkg-parsechangelog

AUTHOR AND COPYRIGHT

       This program is Copyright 2001 by Thomas Smith <chihuahua@tmbg.org>.
       It is free software.  You may distribute it under the terms of the GNU
       Lesser GPL, any version.