Bug 2240587

Summary: perl-CryptX-0.078-4.fc40 FTBFS: Failed test '$x = Math::BigFloat->new("1"); $y = Math::BigFloat->new("1"); $x >> $y;'
Product: [Fedora] Fedora Reporter: Petr Pisar <ppisar>
Component: perl-CryptXAssignee: Xavier Bachelot <xavier>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: xavier
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://koschei.fedoraproject.org/package/perl-CryptX
Whiteboard:
Fixed In Version: perl-CryptX-0.079-1.fc40 perl-CryptX-0.080-5.el10_0 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-10-02 10:19:45 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:    
Bug Blocks: 2231791    

Description Petr Pisar 2023-09-25 11:26:11 UTC
perl-CryptX-0.078-4.fc40 fails to build in Fedora 40 because some tests fail:

t/mac_xcbc.t ........................ ok
# Math::BigInt VERSION=1.999841
t/mbi_ltm_01load.t .................. ok
#   Failed test '$x = Math::BigFloat->new("1"); $y = Math::BigFloat->new("1"); $x >> $y;'
#   at ./t/mbi_ltm/bigfltpm.inc line 168.
#          got: '0'
#     expected: '0.5'
#   Failed test '$x = Math::BigFloat->new("123"); $y = Math::BigFloat->new("1"); $x >> $y;'
#   at ./t/mbi_ltm/bigfltpm.inc line 168.
#          got: '61'
#     expected: '61.5'
#   Failed test '$x = Math::BigFloat->new("2"); $y = Math::BigFloat->new("18.2"); $x <<= $y; $x->copy()->bfround(-9);'
#   at ./t/mbi_ltm/bigfltpm.inc line 502.
#          got: '524288.000000000'
#     expected: '602248.763144685'
# Looks like you failed 3 tests of 2396.
t/mbi_ltm_bigfltpm.t ................ 
Dubious, test returned 3 (wstat 768, 0x300)
Failed 3/2396 subtests 
	(less 1 skipped subtest: 2392 okay)
t/mbi_ltm_bigintg.t ................. ok
#   Failed test '$x = Math::BigInt->new("+8"); $y = Math::BigInt->new("-2"); $x << $y;'
#   at ./t/mbi_ltm/bigintpm.inc line 202.
#          got: '2'
#     expected: 'NaN'
#   Failed test '$x = Math::BigInt->new("+1234"); $y = Math::BigInt->new("-3"); $x->blsft($y, 10);'
#   at ./t/mbi_ltm/bigintpm.inc line 202.
#          got: '1'
#     expected: 'NaN'
#   Failed test '$x = Math::BigInt->new("+2"); $y = Math::BigInt->new("-2"); $x >> $y;'
#   at ./t/mbi_ltm/bigintpm.inc line 202.
#          got: '8'
#     expected: 'NaN'
#   Failed test '$x = Math::BigInt->new("+1234"); $y = Math::BigInt->new("-3"); $x->brsft($y, 10);'
#   at ./t/mbi_ltm/bigintpm.inc line 202.
#          got: '1234000'
#     expected: 'NaN'
# Looks like you failed 4 tests of 3718.
t/mbi_ltm_bigintpm.t ................ 
Dubious, test returned 4 (wstat 1024, 0x400)
Failed 4/3718 subtests 
	(less 50 skipped subtests: 3664 okay)
t/mbi_ltm_biglog.t .................. ok
[...]
Test Summary Report
-------------------
t/mbi_ltm_bigfltpm.t              (Wstat: 768 (exited 3) Tests: 2396 Failed: 3)
  Failed tests:  307, 313, 2394
  Non-zero exit status: 3
t/mbi_ltm_bigintpm.t              (Wstat: 1024 (exited 4) Tests: 3718 Failed: 4)
  Failed tests:  701, 713, 733, 745
  Non-zero exit status: 4

A difference between passing and failing build root is at <https://koschei.fedoraproject.org/build/16369678>. An upgrade of perl-Math-BigInt from 1:1.9998.39-2.fc39 to 1:1.9998.41-1.fc40 is suspicious. From a changelog:

1.999840 2023-09-18
 
 * Add methods bblsft() and bbrsft(), which do bitwise left and right shift,
   respectively. The binary operators for bitwise left and right shift, "<<"
   and ">>", now call the methods bblsft() and bbrsft(), respectively.
 
   While this behaviour is consistent with how "<<" and ">>" work on floating
   point numbers in core Perl, it changes how "<<" and ">>" worked on
   Math::BigFloat objects. This is a corner case, but any code currently using
   "<<" and ">>" on Math::BigFloat objects might need to be modified as follows
 
       $x >>= $y    should be changed to    $x -> brsft($y)
       $x <<= $y    should be changed to    $x -> blsft($y)
       $x >>  $y    should be changed to    $x -> copy() -> brsft($y)
       $x <<  $y    should be changed to    $x -> copy() -> blsft($y)

Comment 1 Fedora Update System 2023-10-02 10:13:57 UTC
FEDORA-2023-27e225c9da has been submitted as an update to Fedora 40. https://bodhi.fedoraproject.org/updates/FEDORA-2023-27e225c9da

Comment 2 Fedora Update System 2023-10-02 10:19:45 UTC
FEDORA-2023-27e225c9da has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 3 Fedora Update System 2024-08-20 10:40:30 UTC
FEDORA-EPEL-2024-6c5ce43131 (perl-CryptX-0.080-5.el10_0) has been submitted as an update to Fedora EPEL 10.0.
https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2024-6c5ce43131

Comment 4 Fedora Update System 2024-08-21 02:52:08 UTC
FEDORA-EPEL-2024-6c5ce43131 has been pushed to the Fedora EPEL 10.0 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2024-6c5ce43131

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

Comment 5 Fedora Update System 2024-08-22 01:53:04 UTC
FEDORA-EPEL-2024-6c5ce43131 (perl-CryptX-0.080-5.el10_0) has been pushed to the Fedora EPEL 10.0 stable repository.
If problem still persists, please make note of it in this bug report.