Bug 2119130

Summary: Please rebuild perl-Module-Loaded after perl-generators-1.14 lands to pick up perl(base) requirement
Product: [Fedora] Fedora Reporter: Charles R. Anderson <cra>
Component: perlAssignee: Jitka Plesnikova <jplesnik>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 37CC: caillon+fedoraproject, cra, echevemaster, extras-qa, iarnell, jplesnik, kasal, lester.hightower, mkreder, mmaslano, mspacek, noatsecure, perl-devel, ppisar, psabata, rhughes, sandmann, spotrh
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: perl-5.36.0-492.fc38 perl-5.36.0-492.fc37 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 2029995 Environment:
Last Closed: 2022-09-14 04:04:36 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2029995    
Bug Blocks:    

Description Charles R. Anderson 2022-08-17 15:53:20 UTC
+++ 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.

Comment 1 Fedora Update System 2022-08-30 09:13:39 UTC
FEDORA-2022-268ff3dd3a has been submitted as an update to Fedora 37. https://bodhi.fedoraproject.org/updates/FEDORA-2022-268ff3dd3a

Comment 2 Fedora Update System 2022-08-31 02:21:33 UTC
FEDORA-2022-268ff3dd3a has been pushed to the Fedora 37 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-268ff3dd3a`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-268ff3dd3a

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 3 Fedora Update System 2022-09-14 04:04:36 UTC
FEDORA-2022-268ff3dd3a has been pushed to the Fedora 37 stable repository.
If problem still persists, please make note of it in this bug report.