https://bugzilla.redhat.com/show_bug.cgi?id=2119130
Bug ID: 2119130
Summary: Please rebuild perl-Module-Loaded after
perl-generators-1.14 lands to pick up perl(base)
requirement
Product: Fedora
Version: 37
Status: NEW
Component: perl
Assignee: jplesnik(a)redhat.com
Reporter: cra(a)fea.st
QA Contact: extras-qa(a)fedoraproject.org
CC: caillon+fedoraproject(a)gmail.com, cra(a)fea.st,
echevemaster(a)gmail.com, extras-qa(a)fedoraproject.org,
iarnell(a)gmail.com, jplesnik(a)redhat.com, kasal(a)ucw.cz,
lester.hightower(a)gmail.com, mkreder(a)gmail.com,
mmaslano(a)redhat.com, mspacek(a)redhat.com,
noatsecure(a)protonmail.com,
perl-devel(a)lists.fedoraproject.org, ppisar(a)redhat.com,
psabata(a)redhat.com, rhughes(a)redhat.com,
sandmann(a)redhat.com, spotrh(a)gmail.com
Depends On: 2029995
Target Milestone: ---
Classification: Fedora
+++ This bug was initially created as a clone of Bug #2029995 +++
Please rebuild perl-Module-Loaded after perl-generators-1.14 lands in rawhide
and f37 to pick up the perl(base) requirement as described below.
Description of problem: The package should include the 'perl-base' package as a
required dependency, not a weak one. If weak dependencies are not enabled, then
a perl error message will appear when trying to launch the program in a
terminal.
Version-Release number of selected component (if applicable): kpcli.noarch
3.6-5.fc35
How reproducible: Every time
Steps to Reproduce:
1. Install the package, "# dnf install kpcli --setopt=install_weak_deps=False"
2. Launch kpcli in a terminal emulator
Actual results:
"Can't locate base.pm in @INC (you may need to install the base module) (@INC
contains: /usr/local/lib64/perl5/5.34 /usr/local/share/perl5/5.34
/usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5
/usr/share/perl5) at /usr/share/perl5/Module/Loaded.pm line 6.
BEGIN failed--compilation aborted at /usr/share/perl5/Module/Loaded.pm line 6.
Compilation failed in require at /usr/bin/kpcli line 45.
BEGIN failed--compilation aborted at /usr/bin/kpcli line 45."
Expected results: The application does not show any errors
Additional info: The 'perl-base' package needs to be a required dependency
--- Additional comment from Charles R. Anderson on 2022-07-24 15:18:19 UTC ---
Reassigned to perl:
"BEGIN failed--compilation aborted at /usr/share/perl5/Module/Loaded.pm line
6."
"package Module::Loaded;
use strict;
use Carp qw[carp];
BEGIN { use base 'Exporter';"
rpm -qf --qf='%{sourcerpm}\n'
/usr/share/perl5/Module/Loaded.pm
perl-5.34.1-486.fc35.src.rpm
rpm -q --requires perl | grep base
[no output]
--- Additional comment from Charles R. Anderson on 2022-07-24 15:25:42 UTC ---
More importantly, perl's subpackage perl-Module-Loaded is missing the
"Requires: perl(base)":
rpm -q --requires perl-Module-Loaded | grep base
[no output]
--- Additional comment from Charles R. Anderson on 2022-07-24 16:05:08 UTC ---
This is actually a bug in the perl-generators perl.req script:
/usr/lib/rpm/perl.req
~/src/fedora/git/perl/perl-5.36.0/cpan/Module-Loaded/lib/Module/Loaded.pm
perl(Carp)
perl(strict)
perl(vars)
If you add a newline before the 'use base' line in Loaded.pm, it works
correctly:
diff -ub Loaded.pm~ Loaded.pm
--- Loaded.pm~ 2022-07-24
11:46:54.711678673 -0400
+++ Loaded.pm 2022-07-24 11:59:00.149220316 -0400
@@ -3,7 +3,8 @@
use strict;
use Carp qw[carp];
-BEGIN { use base 'Exporter';
+BEGIN {
+ use base 'Exporter';
use vars qw[@EXPORT $VERSION];
$VERSION = '0.08';
/usr/lib/rpm/perl.req Loaded.pm
perl(Carp)
perl(Exporter)
perl(base)
perl(strict)
perl(vars)
--- Additional comment from Charles R. Anderson on 2022-07-24 18:45:53 UTC ---
--- Additional comment from Jitka Plesnikova on 2022-08-16 16:31:05 UTC ---
Thanks for the report, I'll look at it.
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=2029995
[Bug 2029995] perl.req: use keywords not found on BEGIN { lines
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugzilla.redhat.com/show_bug.cgi?id=2119130