---
name: "Debbugs::SOAP"
section: "3pm"
platform: "linux"
package: "libdebbugs-perl"
version: "2.6.4"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Debbugs::SOAP"
---

# Debbugs::SOAP(3pm)

## NAME

Debbugs::SOAP --

## SYNOPSIS

## DESCRIPTION

## BUGS

None known.

### 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.

### get\_status

```
     my @statuses = get_status(@bugs);
     my @statuses = get_status([bug => 304234,
                                dist => 'unstable',
                               ],
                               [bug => 304233,
                                dist => 'unstable',
                               ],
                              )
```

Returns an arrayref of hashrefs which output the status for specific sets of bugs.

In the first case, no options are passed to Debbugs::Status::get\_bug\_status besides the bug number; in the second the bug, dist, arch, bugusertags, sourceversions, and version parameters are passed if they are present.

As a special case for suboptimal SOAP implementations, if only one argument is passed to get\_status and it is an arrayref which either is empty, has a number as the first element, or contains an arrayref as the first element, the outer arrayref is dereferenced, and processed as in the examples above.

See Debbugs::Status::get\_bug\_status for details.

### get\_bugs

```
     my @bugs = get_bugs(...);
     my @bugs = get_bugs([...]);
```

Returns a list of bugs. In the second case, allows the variable parameters to be specified as an array reference in case your favorite language's SOAP implementation is craptacular.

See Debbugs::Bugs::get\_bugs for details on what `"..."` actually means.

### newest\_bugs

```
     my @bugs = newest_bugs(5);
```

Returns a list of the newest bugs. \[Note that all bugs are \*not\* guaranteed to exist, but they should in the most common cases.\]

### get\_bug\_log

```
     my $bug_log = get_bug_log($bug);
     my $bug_log = get_bug_log($bug,$msg_num);
```

Retuns a parsed set of the bug log; this is an array of hashes with the following

```
 [{html => '',
   header => '',
   body    => '',
   attachments => [],
   msg_num     => 5,
  },
  {html => '',
   header => '',
   body    => '',
   attachments => [],
  },
 ]
```

Currently `$msg_num` is completely ignored.

### binary\_to\_source

```
     binary_to_source($binary_name,$binary_version,$binary_architecture)
```

Returns a reference to the source package name and version pair corresponding to a given binary package name, version, and architecture. If undef is passed as the architecture, returns a list of references to all possible pairs of source package names and versions for all architectures, with any duplicates removed.

As of comaptibility version 2, this has changed to use the more powerful binary\_to\_source routine, which allows returning source only, concatenated scalars, and other useful features.

See the documentation of Debbugs::Packages::binary\_to\_source for details.

### source\_to\_binary

```
     source_to_binary($source_name,$source_version);
```

Returns a reference to an array of references to binary package name, version, and architecture corresponding to a given source package name and version. In the case that the given name and version cannot be found, the unversioned package to source map is consulted, and the architecture is not returned.

(This function corresponds to Debbugs::Packages::sourcetobinary)

### get\_versions

```
     get_version(package=>'foopkg',
                 dist => 'unstable',
                 arch => 'i386',
                );
```

Returns a list of the versions of package in the distributions and architectures listed. This routine only returns unique values.

- package -- package to return list of versions

  - dist -- distribution (unstable, stable, testing); can be an arrayref

  - arch -- architecture (i386, source, ...); can be an arrayref

  - time -- returns a version=\>time hash at which the newest package matching this version was uploaded

  - source -- returns source/version instead of just versions

  - no\_source\_arch -- discards the source architecture when arch is not passed. \[Used for finding the versions of binary packages only.\] Defaults to 0, which does not discard the source architecture. (This may change in the future, so if you care, please code accordingly.)

  - return\_archs -- returns a version=\>\[archs\] hash indicating which architectures are at which versions.

  This function corresponds to Debbugs::Packages::get\_versions

## VERSION COMPATIBILITY

The functionality provided by the SOAP interface will change over time.

To the greatest extent possible, we will attempt to provide backwards compatibility with previous versions; however, in order to have backwards compatibility, you need to specify the version with which you are compatible.
