Bug 1268021 - perl.req does not find `perl(strict)' in /usr/share/perl5/ExtUtils/ParseXS.pm
perl.req does not find `perl(strict)' in /usr/share/perl5/ExtUtils/ParseXS.pm
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: rpm (Show other bugs)
6.7
Unspecified Unspecified
unspecified Severity unspecified
: rc
: ---
Assigned To: packaging-team-maint
Karel Srot
: Regression
Depends On:
Blocks: 1271238
  Show dependency treegraph
 
Reported: 2015-10-01 11:06 EDT by Petr Pisar
Modified: 2016-05-10 20:54 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1320214 (view as bug list)
Environment:
Last Closed: 2016-05-10 20:54:06 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2016:0936 normal SHIPPED_LIVE rpm bug fix and enhancement update 2016-05-10 18:54:44 EDT

  None (edit)
Description Petr Pisar 2015-10-01 11:06:27 EDT
rpm-4.8.0-47.el6 fails to find `perl(strict)' in /usr/share/perl5/ExtUtils/ParseXS.pm:

# /usr/lib/rpm/perl.req /usr/share/perl5/ExtUtils/ParseXS.pm 
perl >= 0:5.006
perl(Config)
perl(Cwd)
perl(Exporter)
perl(File::Basename)
perl(File::Spec)
perl(Symbol)
perl(re)
perl(vars)

While perl.req from rpm-4.8.0-38.el6_6 works as expected:

# /tmp/perl.req /usr/share/perl5/ExtUtils/ParseXS.pm 
perl >= 0:5.006
perl(Config)
perl(Cwd)
perl(Exporter)
perl(File::Basename)
perl(File::Spec)
perl(Symbol)
perl(re)
perl(strict)
perl(vars)


The relevant /usr/share/perl5/ExtUtils/ParseXS.pm text is:

#########################################################
package
  ExtUtils::ParseXS::CountLines;
use strict;
use vars qw($SECTION_END_MARKER);


This is regression introduced in rpm-4.8.0-39.
Comment 5 Petr Pisar 2015-10-01 11:44:36 EDT
This review of dependency changes:

perl-ExtUtils-ParseXS: missing perl(strict) - regression
perl-Module-Build: missing perl(ExtUtils::MakeMaker) - not a bug
perl-Module-Build: emerging perl(File::Spec) >= 0.82 - not a bug
perl-devel: missing perl(Carp) - not a bug, required by generated code
perl-devel: missing perl(DynaLoader) - not a bug, required by generated code
perl-devel: missing perl(Exporter) - not a bug, required by generated code
perl-devel: missing perl(File::Find) - regression

So there are only the regressions:

perl-ExtUtils-ParseXS: missing perl(strict)
perl-devel: missing perl(File::Find)

Both of them have the same common feature that the "use FOO" appears twice in the code. First as a text that should be ignored by the generator, second and a text that should be accepted by the generator.
Comment 6 Ľuboš Kardoš 2015-10-02 06:05:20 EDT
Regressions are caused by backporting this upstream commit [1]. Problem is that the code in the commit cannot parse all possible variants of here-document. The problem was partially fixed upstream in commit [2]. 

[1] https://github.com/rpm-software-management/rpm/commit/0d5929ba5eabadec49273bb090ba9158dfccc30c

[2] https://github.com/rpm-software-management/rpm/commit/4f05fa0e15bcb66d29f89e28829ea43107f6382b
Comment 12 errata-xmlrpc 2016-05-10 20:54:06 EDT
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-0936.html

Note You need to log in before you can comment on or make changes to this bug.