[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#694979: debbugs: get_bugs() should allow specifying binary versions of packages

Package: debbugs
Severity: wishlist

as discussed via private e-mail with Don Armstrong, I would need the
following enhancement in the BTS SOAP interface, in order to enhance
apt-listbugs (which I maintain).

Currently, one of the procedures that apt-listbugs calls via SOAP is
get_bugs(), with arguments like (in Ruby):

('severity', ["critical", "grave"], 'package', ["pkg1", "pkg2", "pkg3"])

which results in the following SOAP request:

<?xml version="1.0" encoding="utf-8" ?>
<env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema";
    <n1:get_bugs env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
      <keyvalue xmlns:n2="http://schemas.xmlsoap.org/soap/encoding/";
        <item xsi:type="xsd:string">severity</item>
        <item n2:arrayType="xsd:anyType[2]"
          <item xsi:type="xsd:string">critical</item>
          <item xsi:type="xsd:string">grave</item>
        <item xsi:type="xsd:string">package</item>
        <item n2:arrayType="xsd:anyType[3]"
          <item xsi:type="xsd:string">pkg1</item>
          <item xsi:type="xsd:string">pkg2</item>
          <item xsi:type="xsd:string">pkg3</item>

This returns an array with all the (unarchived) bug-numbers that are
assigned to one of the mentioned binary packages and have one of the
mentioned severities.

In order to get over a limitation of apt-listbugs (which gets
confused [1] about version tracking info whenever the source version
of a package differs from the corresponding binary version)
and in order to fix another bug (apt-listbugs gets confused [2]
about version tracking info in certain cases where a bug is assigned
to more than one package), I would need to call the procedure
differently, as explained below.

[1] http://bugs.debian.org/257873#24
[2] http://bugs.debian.org/693291

I would need to call get_bugs() so that it returned an array with
all the (unarchived) bug-numbers that apply to the specified binary
version of one of the mentioned binary packages and have one of
the mentioned severities.
Something like:

get_bugs('severity', ["critical", "grave"],
         'package', ["pkg1/x.y-z", "pkg2", "pkg3/a.b.c-d"])

which would request the bugs that apply to binary version x.y-z of
binary package pkg1, the bugs that apply to any version of binary
package pkg2, and the bugs that apply to binary version a.b.c-d of
binary package pkg3.
Or some other way to obtain the same result with a single procedure

Of course, when I say that a bug "applies" to a given package version,
I mean that the bug is present in that binary version, as long as the
BTS version tracking knows.
I am convinced that the BTS has all the information needed to determine
which bugs apply to a given binary version of a binary package, and
hence it should be possible to ask it through the SOAP interface.

It would be really really great, if you could implement a way to obtain
what I described with one single get_bugs() SOAP request.
Please, please, think about it!

Thanks for your time, I really hope this can be implemented...


Reply to: