Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

perl 5.34 test failures on musl and i686 (linux) #18988

Closed
dkwo opened this issue Jul 17, 2021 · 12 comments
Closed

perl 5.34 test failures on musl and i686 (linux) #18988

dkwo opened this issue Jul 17, 2021 · 12 comments

Comments

@dkwo
Copy link

dkwo commented Jul 17, 2021

I'm packaging it from https://www.cpan.org/src/5.0/perl-5.34.0.tar.gz and I see a few test failures:
on x86_64

../lib/ExtUtils/t/Embed.t                                          (Wstat: 0 Tests: 6 Failed: 1)
  Failed test:  10
  Parse errors: Tests out of sequence.  Found (10) but expected (6)
                Bad plan.  You planned 10 tests but ran 6.

on i686

../ext/POSIX/t/math.t                                              (Wstat: 256 Tests: 151 Failed: 1)
  Failed test:  129
  Non-zero exit status: 1
../lib/ExtUtils/t/Embed.t                                          (Wstat: 0 Tests: 9 Failed: 0)
  Parse errors: Tests out of sequence.  Found (7) but expected (6)
                Tests out of sequence.  Found (8) but expected (7)
                Tests out of sequence.  Found (9) but expected (8)
                Tests out of sequence.  Found (10) but expected (9)
                Bad plan.  You planned 10 tests but ran 9.

and on x86_64-musl

run/locale.t                                                       (Wstat: 0 Tests: 40 Failed: 2)
  Failed tests:  38-39
../lib/ExtUtils/t/Embed.t                                          (Wstat: 0 Tests: 6 Failed: 1)
  Failed test:  10
  Parse errors: Tests out of sequence.  Found (10) but expected (6)
                Bad plan.  You planned 10 tests but ran 6.
../lib/locale.t                                                    (Wstat: 0 Tests: 682 Failed: 1)
  Failed test:  450

Can I safely skip these tests, or is there something to be concerned?
Thanks.

@Leont
Copy link
Contributor

Leont commented Jul 18, 2021

These should not fail. You don't mention anything about your build environment or platform, but given you mention musl I'm guessing you're dealing with some kind of Linux.

@dkwo
Copy link
Author

dkwo commented Jul 19, 2021

Yes, I'm on Linux, more precisely Void Linux.
Here's the pr to upate perl void-linux/void-packages#31635
which fails those tests on x86_64 and i686 arch only.
You can see the template used in the first commit, and build style at https://github.com/void-linux/void-packages/blob/master/common/build-style/gnu-configure.sh

@Leont
Copy link
Contributor

Leont commented Jul 19, 2021

It would help to have the output of the failing test, e.g. by running PERL_CORE=1 ./perl -Ilib lib/ExtUtils/t/Embed.t

@dkwo
Copy link
Author

dkwo commented Jul 20, 2021

This failure seems to go away if I first build all the related packages, and then test perl.
Let me do a few more checks, and report.

@dkwo
Copy link
Author

dkwo commented Jul 22, 2021

I can confirm the lib/ExtUtils/t/Embed.t test now passes.

If I do what you suggest with locale on musl, I get instead

=> perl-5.34.0_1: running do_check ...
"-T" is on the #! line, it must also be used on the command line at lib/locale.t line 1.
=> ERROR: perl-5.34.0_1: do_check: 'PERL_CORE=1 perl -Ilib lib/locale.t' exited with 255
=> ERROR:   in do_check() at srcpkgs/perl/template:193

How can I test for the failed locale test on musl?

@Leont
Copy link
Contributor

Leont commented Jul 22, 2021

How can I test for the failed locale test on musl?

As the error message suggest, you need to add a -T argument to perl for it to be able to run that test: PERL_CORE=1 ./perl -T -Ilib t/run/locale.t

@dkwo
Copy link
Author

dkwo commented Jul 22, 2021

Both on x86_64-musl:

PERL_CORE=1 ./perl -T -Ilib lib/locale.t
not ok 450 variable set to setlocale("invalid locale name") is considered uninitialized

and

PERL_CORE=1 ./perl -T -Ilib t/run/locale.t
not ok 38 - In setting complicated invalid LC_ALL, final individ category doesn't need a ';'
# Failed test 38 - In setting complicated invalid LC_ALL, final individ category doesn't need a ';' at ./test.pl line 1077
#      got "Can\'t fix broken locale name \"LC_COLLATE=foo_BAR\" at - line 3."
# expected ""
# PROG:
#                 use locale;
#                 use POSIX;
#                 POSIX::setlocale(LC_ALL, "LC_COLLATE=foo_BAR;LC_CTYPE=foo_BAR;LC_MESSAGES=foo_BAR;LC_MONETARY=foo_BAR;LC_NUMERIC=foo_BAR");
# STATUS: 65280
not ok 39 - In setting complicated valid LC_ALL, final individ category doesn't need a ';'
# Failed test 39 - In setting complicated valid LC_ALL, final individ category doesn't need a ';' at ./test.pl line 1077
#      got "Can\'t fix broken locale name \"LC_COLLATE=Afrikaans\" at - line 3."
# expected ""
# PROG:
#                 use locale;
#                 use POSIX;
#                 POSIX::setlocale(LC_ALL, "LC_COLLATE=Afrikaans;LC_CTYPE=Afrikaans;LC_MESSAGES=Afrikaans;LC_MONETARY=Afrikaans;LC_NUMERIC=Afrikaans");
# STATUS: 65280

@khwilliamson
Copy link
Contributor

khwilliamson commented Jul 22, 2021 via email

@dkwo
Copy link
Author

dkwo commented Jul 22, 2021 via email

@dkwo dkwo changed the title perl 5.34 test failures: /lib/ExtUtils/t/Embed.t & others perl 5.34 test failures on musl and i686 (linux) Jul 23, 2021
@dkwo
Copy link
Author

dkwo commented Aug 15, 2021

Do I need to provide more data to debug the musl issue?

@dkwo
Copy link
Author

dkwo commented Sep 23, 2021

It appears the remaning errors go away if we use Configure instead of configure.

@jkeenan
Copy link
Contributor

jkeenan commented Sep 23, 2021

It appears the remaning errors go away if we use Configure instead of configure.

Thanks for getting back to us. Closing ticket.

@jkeenan jkeenan closed this as completed Sep 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants