Lintian::Processable::Source::Relation(3)

NAME
Lintian::Processable::Source::Relation - Lintian interface to source package data collection

SYNOPSIS
    my ($name, $type, $dir) = ('foobar', 'source', '/path/to/lab-entry');
    my $collect = Lintian::Processable::Source::Relation->new($name);
    if ($collect->native) {
        print encode_utf8("Package is native\n");
    }

DESCRIPTION
Lintian::Processable::Source::Relation provides an interface to package data for source packages. It implements data collection methods specific to source packages.

This module is in its infancy. Most of Lintian still reads all data from files in the laboratory whenever that data is needed and generates that data via collect scripts. The goal is to eventually access all data about source packages via this module so that the module can cache data where appropriate and possibly retire collect scripts in favor of caching that data in memory.

INSTANCE METHODS

binary_relation (PACKAGE, FIELD)
    Returns a Lintian::Relation object for the specified FIELD in the binary package PACKAGE in the debian/control file. FIELD should be one of the possible relationship fields of a Debian package or one of the following special values:

    All The concatenation of Pre-Depends, Depends, Recommends, and Suggests.

    Strong
        The concatenation of Pre-Depends and Depends.

    Weak
        The concatenation of Recommends and Suggests.

    If FIELD isn't present in the package, the returned Lintian::Relation object will be empty (present but satisfies nothing).

    Any substvars in debian/control will be represented in the returned relation as packages named after the substvar.

saved_binary_relations
relation (FIELD)
    Returns a Lintian::Relation object for the given build relationship field FIELD. In addition to the normal build relationship fields, the following special field names are supported:

    Build-Depends-All
        The concatenation of Build-Depends, Build-Depends-Arch and Build-Depends-Indep.

    Build-Conflicts-All
        The concatenation of Build-Conflicts, Build-Conflicts-Arch and Build-Conflicts-Indep.

    If FIELD isn't present in the package, the returned Lintian::Relation object will be empty (present but satisfies nothing).

saved_relation
relation_norestriction (FIELD)
    The same as "relation (FIELD)", but ignores architecture restrictions and build profile restrictions in the FIELD field.

saved_relations_norestriction

AUTHOR
Originally written by Russ Allbery <rra@debian.org> for Lintian. Amended by Felix Lechner <felix.lechner@lease-up.com> for Lintian.

SEE ALSO
lintian(1)