Bug#707229: libyaml-perl seems require Mo, which is not packaged for debian
Ruslan Kabalin
r.kabalin at lancaster.ac.uk
Wed May 8 11:00:47 UTC 2013
Package: libyaml-perl
Version: 0.81-1
Severity: important
Dear Maintainer,
After upgrading to Wheezy I have got a problem with so-called "configbuild
tool" (which uses libyaml-perl) and reports the following errors:
DEBUG - Loading YAML data from defaults/params.yml
FATAL - Can't locate Mo/builder.pm in @INC (@INC contains: /etc/perl
/usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5
/usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14
/usr/local/lib/site_perl . /usr/share/configbuild/lib) at (eval 305) line 2,
<$IN> line 1.
at (eval 305) line 2
YAML::Mo::BEGIN() called at (eval 305) line 2
eval {...} called at (eval 305) line 2
eval 'no Mo::builder
;' called at /usr/share/perl5/YAML/Mo.pm line 5
YAML::Mo::__ANON__(undef, 'builder', 'default') called at
/usr/share/perl5/YAML/Loader.pm line 2
YAML::Loader::BEGIN() called at (eval 305) line 2
eval {...} called at (eval 305) line 2
require YAML/Loader.pm called at (eval 304) line 2
eval 'require YAML::Loader
;' called at /usr/share/perl5/YAML.pm line 82
YAML::init_action_object('YAML=HASH(0x1d5d1e0)', 'loader') called at
/usr/share/perl5/YAML.pm line 21
YAML::__ANON__('YAML=HASH(0x1d5d1e0)') called at
/usr/share/perl5/YAML/Mo.pm line 5
YAML::Mo::__ANON__('YAML=HASH(0x1d5d1e0)') called at
/usr/share/perl5/YAML.pm line 34
YAML::Load('---
#########################################################...') called at
/usr/share/perl5/YAML.pm line 75
YAML::LoadFile('defaults/params.yml') called at /usr/bin/configbuild
line 500
eval {...} called at /usr/bin/configbuild line 500
ConfigUtils::ConfigBuild::load_yaml('HASH(0x1d42860)',
'defaults/params.yml') called at /usr/bin/configbuild line 716
ConfigUtils::ConfigBuild::load_datasource('HASH(0x1d42860)',
'params.yml', 'defaults/config.rb3') called at /usr/bin/configbuild line 816
ConfigUtils::ConfigBuild::__ANON__() called at
/usr/share/perl5/Error.pm line 416
eval {...} called at /usr/share/perl5/Error.pm line 408
Error::subs::try('CODE(0x1d5cdf0)', 'HASH(0x1d5d048)') called at
/usr/bin/configbuild line 823
FATAL - Can't locate Mo/default.pm in @INC (@INC contains: /etc/perl
/usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5
/usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14
/usr/local/lib/site_perl . /usr/share/configbuild/lib) at (eval 306) line 2,
<$IN> line 1.
FATAL - Can't locate Mo/default.pm in @INC (@INC contains: /etc/perl
/usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5
/usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14
/usr/local/lib/site_perl . /usr/share/configbuild/lib) at (eval 306) line 2,
<$IN> line 1.
BEGIN failed--compilation aborted at (eval 306) line 2, <$IN> line 1.
at (eval 306) line 2
eval 'no Mo::default
;' called at /usr/share/perl5/YAML/Mo.pm line 5
YAML::Mo::__ANON__(undef, 'builder', 'default') called at
/usr/share/perl5/YAML/Loader.pm line 2
YAML::Loader::BEGIN() called at (eval 306) line 2
eval {...} called at (eval 306) line 2
require YAML/Loader.pm called at (eval 304) line 2
eval 'require YAML::Loader
;' called at /usr/share/perl5/YAML.pm line 82
YAML::init_action_object('YAML=HASH(0x1d5d1e0)', 'loader') called at
/usr/share/perl5/YAML.pm line 21
YAML::__ANON__('YAML=HASH(0x1d5d1e0)') called at
/usr/share/perl5/YAML/Mo.pm line 5
YAML::Mo::__ANON__('YAML=HASH(0x1d5d1e0)') called at
/usr/share/perl5/YAML.pm line 34
YAML::Load('---
#########################################################...') called at
/usr/share/perl5/YAML.pm line 75
YAML::LoadFile('defaults/params.yml') called at /usr/bin/configbuild
line 500
eval {...} called at /usr/bin/configbuild line 500
ConfigUtils::ConfigBuild::load_yaml('HASH(0x1d42860)',
'defaults/params.yml') called at /usr/bin/configbuild line 716
ConfigUtils::ConfigBuild::load_datasource('HASH(0x1d42860)',
'params.yml', 'defaults/config.rb3') called at /usr/bin/configbuild line 816
ConfigUtils::ConfigBuild::__ANON__() called at
/usr/share/perl5/Error.pm line 416
eval {...} called at /usr/share/perl5/Error.pm line 408
Configbuild tool does not require Mo (Micro Objects) anywhere in the code for
functioning and works perfectly on squeeze. The problem only appears on Wheezy.
Closer investigation revealed that libyaml-perl in stable (Wheezy), which it
uses, mentions Mo in /usr/share/perl5/YAML/Mo.pm. I do not have a deep knowlege
in perl and libyaml-perl library functioning, but it seems to me that there is
a missing dependency (assuming Mo is indeed required for libyaml-perl
functionality). What makes it more complicated, that Mo
(http://search.cpan.org/~carlos/Mo-0.33/) does not exists in Debian repo.
Any insight from you guys would be quite appreciated. It might be that the bug
is caused by some incorrect use of libyaml-perl, though I do not see any calls
different from YAML::Dump and YAML::LoadFile.
Thanks.
-- System Information:
Debian Release: 7.0
APT prefers stable
APT policy: (990, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 3.2.0-4-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages libyaml-perl depends on:
ii perl 5.14.2-21
Versions of packages libyaml-perl recommends:
ii libyaml-syck-perl 1.20-1
Versions of packages libyaml-perl suggests:
pn libyaml-shell-perl <none>
-- no debconf information
More information about the pkg-perl-maintainers
mailing list