Config::Model::Debian:UsereContributed PerConfig::Model::Debian::Dependency(3)NAMEConfig::Model::Debian::Dependency - Checks Debian dependency
declarations
VERSION
version 1.235
SYNOPSIS
use Config::Model ;
use Log::Log4perl qw(:easy) ;
use Data::Dumper ;
Log::Log4perl->easy_init($WARN);
# define configuration tree object
my $model = Config::Model->new ;
$model ->create_config_class (
name => "MyClass",
element => [
Depends => {
'type' => 'leaf',
'value_type' => 'uniline',
class => 'Config::Model::Debian::Dependency',
},
],
) ;
my $inst = $model->instance(root_class_name => 'MyClass' );
my $root = $inst->config_root ;
$root->load( 'Depends="libc6 ( >= 1.0 )"') ;
# Connecting to qa.debian.org to check libc6 versions. Please wait ...
# Warning in 'Depends' value 'libc6 ( >= 1.0 )': unnecessary
# versioned dependency: >= 1.0. Debian has lenny-security ->
# 2.7-18lenny6; lenny -> 2.7-18lenny7; squeeze-security ->
# 2.11.2-6+squeeze1; squeeze -> 2.11.2-10; wheezy -> 2.11.2-10; sid
# -> 2.11.2-10; sid -> 2.11.2-11;
DESCRIPTION
This class is derived from Config::Model::Value. Its purpose is to
check the value of a Debian package dependency for the following:
· syntax as described in
http://www.debian.org/doc/debian-policy/ch-relationships.html
· Whether the version specified with ">" or ">=" is necessary. This
module will check with Debian server whether older versions can be
found in Debian old-stable or not. If no older version can be
found, a warning will be issued.
Cache
Queries to Debian server are cached in "~/.config_model_depend_cache"
for about one month.
BUGS
More advanced checks can probably be implemented. The author is open to
new ideas. He's even more open to patches (with tests).
AUTHOR
Dominique Dumont, ddumont [AT] cpan [DOT] org
SEE ALSO
Config::Model, Config::Model::Value, Memoize, Memoize::Expire
perl v5.14.12011-07-Config::Model::Debian::Dependency(3)