SYNOPSIS
use Lintian::Lab::Manifest;
my $olist = Lintian::Lab::Manifest->new ('binary');
my $nlist = Lintian::Lab::Manifest->new ('binary');
$olist->read_list ('old/binary-packages');
$nlist->read_list ('new/binary-packages');
my $diff = $olist->diff($nlist);
foreach my $added (@{ $diff->added }) {
my $entry = $nlist->get (@$added);
# do something
}
foreach my $removed (@{ $diff->removed }) {
my $entry = $olist->get (@$removed);
# do something
}
foreach my $changed (@{ $diff->changed }) {
my $oentry = $olist->get (@$changed);
my $nentry = $nlist->get (@$changed);
# use/diff $oentry and $nentry as needed
}
DESCRIPTION
Instances of this class provides access to the packages list used by the Lab as caches.METHODS
- $diff->added
-
Returns a listref containing the keys of the elements that has been added.
Each element is a listref of keys; this list (when dereferenced) can be used with the manifest's get method to look up the item.
- $diff->removed
-
Returns a listref containing the keys of the elements that has been removed.
Each element is a listref of keys; this list (when dereferenced) can be used with the manifest's get method to look up the item.
- $diff->changed
-
Returns a listref containing the keys of the elements that has been changed.
Each element is a listref of keys; this list (when dereferenced) can be used with the manifest's get method to look up the item.
- $diff->nlist
- Returns the ``new'' manifest used to create this diff. Note the manifest is not copied and may have been changed since the diff has been created.
- $diff->olist
- Returns the ``orig'' manifest used to create this diff. Note the manifest is not copied and may have been changed since the diff has been created.
Originally written by Niels Thykier <[email protected]> for Lintian.