Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 2246773 - perl-Devel-Cover needs to be synchronised to perl version currently installed
Summary: perl-Devel-Cover needs to be synchronised to perl version currently installed
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: perl-Devel-Cover
Version: 38
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Tom "spot" Callaway
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-10-28 19:21 UTC by Dick Franks
Modified: 2023-11-22 12:54 UTC (History)
4 users (show)

Fixed In Version: perl-Devel-Cover-1.40-4.fc40
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2023-11-22 12:54:39 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Dick Franks 2023-10-28 19:21:53 UTC
Perl test programs using Devel::Cover emit a warning when running on the "wrong" version of perl.

This happens for each and every test script.

A package dependency needs to be added to force a rebuild of perl-Devel-Cover whenever the perl interpreter is updated.

Reproducible: Always

Steps to Reproduce:
1.
tar xvzf Net-DNS-1.40.tar.gz
2.
perl Makefile.PL
3.
make test_cover
Actual Results:  
PERL_DL_NONLAZY=1 HARNESS_OPTIONS=j1:c "/usr/bin/perl" "-It" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00-install.t ............. 
This version of Devel::Cover was built with Perl version 5.036000.
It is now being run with Perl version 5.036001.
Attempting to make adjustments, but you may find that some of your modules do
not have coverage data collected.  You may need to alter the +-inc, +-ignore
and +-select options.

t/00-install.t ............. 1/210 # 
# 	Filename not in MANIFEST: lib/Net/DNS/RR/DLV.pm
t/00-install.t ............. ok       
t/00-load.t ................ 
This version of Devel::Cover was built with Perl version 5.036000.
It is now being run with Perl version 5.036001.
Attempting to make adjustments, but you may find that some of your modules do
not have coverage data collected.  You may need to alter the +-inc, +-ignore
and +-select options.

...

Expected Results:  
PERL_DL_NONLAZY=1 HARNESS_OPTIONS=j1:c "/usr/bin/perl" "-It" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00-install.t ............. ok       
t/00-load.t ................ # 
# These tests were run using:
# 	Net::DNS                   1.40
...

In this particular case there seem to be no ill effects, but there have been occasions in the past where the version mismatch has rendered Devel::Cover unusable.

Comment 1 Jitka Plesnikova 2023-11-01 15:21:08 UTC
It will be useful to add run-time dependency on perl version used for build.

Requires: perl(:VERSION) = %(eval "`perl -V:version`"; echo ${version:-0})

Comment 2 Dick Franks 2023-11-01 19:39:14 UTC
Q: Is the perl version available to the build process necessarily the same as the perl included in the distribution?

Comment 3 Jitka Plesnikova 2023-11-02 07:12:21 UTC
(In reply to Dick Franks from comment #2)
> Q: Is the perl version available to the build process necessarily the same
> as the perl included in the distribution?

No, but it could help us to find out the packages, which need to be rebuild when we update perl to new minor version. 
Or it can by find as Fails to install package and then new BZ FTI will be reported asap.

Comment 4 Dick Franks 2023-11-02 14:41:26 UTC
If you know the path to the perl RPM spec for the distribution, the required exactly matching version number could be extracted using this one-liner:  


    perl -ne 'print qq(version="$1"\n) if /perl_version\s+([\d.]+)/'    perl.spec

Comment 5 Michal Josef Spacek 2023-11-22 08:28:00 UTC
(In reply to Dick Franks from comment #4)
> If you know the path to the perl RPM spec for the distribution, the required
> exactly matching version number could be extracted using this one-liner:  
> 
> 
>     perl -ne 'print qq(version="$1"\n) if /perl_version\s+([\d.]+)/'   
> perl.spec

This is not helpful, you cannot look to perl.spec file.

I prepared PR for it: https://src.fedoraproject.org/rpms/perl-Devel-Cover/pull-request/1

Comment 6 Fedora Update System 2023-11-22 12:53:10 UTC
FEDORA-2023-993d665cef has been submitted as an update to Fedora 40. https://bodhi.fedoraproject.org/updates/FEDORA-2023-993d665cef

Comment 7 Fedora Update System 2023-11-22 12:54:39 UTC
FEDORA-2023-993d665cef has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.


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