Bug 1228378

Summary: perl is missing encoding.pm
Product: [Fedora] Fedora Reporter: Bruno Wolff III <bruno>
Component: perlAssignee: Petr Pisar <ppisar>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 22CC: bruno, cweyl, emmanuel, iarnell, jplesnik, kasal, perl-devel, ppisar, psabata, rc040203, tcallawa
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: perl-5.20.2-326.fc22 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-06-18 14:11:28 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:

Description Bruno Wolff III 2015-06-04 19:29:05 UTC
Description of problem:
perl 18 in f21 works, but perl 20 in f22 doesn't.
This program fragment is enough to trigger the error:

#!/usr/bin/perl
use utf8;
use locale ':not_characters';
use open ':locale';

The error issued is:
Can't locate encoding.pm in @INC (you may need to install the encoding module) (@INC contains: /usr/local/lib/perl5 /usr/local/share/perl5 /usr/lib/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib/perl5 /usr/share/perl5 .) at /usr/share/perl5/open.pm line 77.
BEGIN failed--compilation aborted at ./test.pl line 4.

Comment 1 Bruno Wolff III 2015-06-04 19:47:35 UTC
/usr/lib/perl5/PerlIO/encoding.pm exits, but /usr/lib/perl5/vendor_perl/encoding.pm doesn't on f22.
On f21 (x86_64 instead of i686) both /usr/lib64/perl5/PerlIO/encoding.pm and /usr/lib64/perl5/vendor_perl/encoding.pm exist.

Comment 2 Emmanuel Seyman 2015-06-05 06:03:07 UTC
(In reply to Bruno Wolff III from comment #1)
>
> /usr/lib/perl5/PerlIO/encoding.pm exits, but
> /usr/lib/perl5/vendor_perl/encoding.pm doesn't on f22.

/usr/lib64/perl5/vendor_perl/encoding.pm is supplied by the perl-encoding package.

Comment 3 Petr Pisar 2015-06-05 06:24:07 UTC
Thank you for the report. I was suspecting something like this could happen, but I could not recall which exact perl module triggers this.

It's because `open' module requires various modules conditionally. We will fix it.

Comment 4 Petr Pisar 2015-06-05 09:03:14 UTC
Minimal reproducer is:

$ perl -e 'use open q{:locale}'

I will sub-package the `open' module to make perl free from deprecated `encoding' with the Filter orchestra.

Then installing `perl(open)' will ensure the `encoding' module is available.

Comment 5 Petr Pisar 2015-06-05 11:21:55 UTC
The fix will be pushed into F23 after finishing perl-5.22 bootstrap.

Comment 6 Fedora Update System 2015-06-05 11:27:28 UTC
perl-5.20.2-326.fc22 has been submitted as an update for Fedora 22.
https://admin.fedoraproject.org/updates/perl-5.20.2-326.fc22

Comment 7 Fedora Update System 2015-06-09 15:01:47 UTC
perl-5.20.2-326.fc22 has been pushed to the Fedora 22 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 8 Petr Pisar 2015-06-18 14:11:28 UTC
Implemented as perl-5.22.0-346.fc23 in Fedora 23.

Comment 9 Phyllis 2025-12-10 09:52:19 UTC Comment hidden (spam)