AnyEvent: t/80_ssltest.t: Fails on FreeBSD when Net::SSLeay is previously installed
James E Keenan
jkeenan at pobox.com
Sun Mar 1 03:27:23 CET 2020
Today I had occasion to try to install AnyEvent version 7.17 against
Perl 5 blead on FreeBSD-13, using cpanm as the installer and specifying
no other modules as arguments to cpanm.
#####
[AnyEvent-7.17] $ uname -mrs
FreeBSD 13.0-CURRENT amd64
$ openssl version
OpenSSL 1.1.1-freebsd 11 Sep 2018
[AnyEvent-7.17] $ bleadperl -v | head -2 | tail -1
This is perl 5, version 31, subversion 10 (v5.31.10
(v5.31.9-32-gae01c992e1)) built for amd64-freebsd-thread-multi
[AnyEvent-7.17] $ bleadperl -V:config_args
config_args='-des -Dusedevel -Uversiononly
-Dprefix=/home/jkeenan/testing/blead -Dman1dir=none -Dman3dir=none
-Duseithreads -Doptimize=-O2 -pipe -fstack-protector -fno-strict-aliasing';
#####
The installation succeeded.
#####
[blead] $ ./bin/cpanm AnyEvent
--> Working on AnyEvent
Fetching
http://www.cpan.org/authors/id/M/ML/MLEHMANN/AnyEvent-7.17.tar.gz ... OK
==> Found dependencies: Canary::Stability
--> Working on Canary::Stability
Fetching
http://www.cpan.org/authors/id/M/ML/MLEHMANN/Canary-Stability-2013.tar.gz
... OK
Configuring Canary-Stability-2013 ... OK
Building and testing Canary-Stability-2013 ... OK
Successfully installed Canary-Stability-2013
Configuring AnyEvent-7.17 ... OK
Building and testing AnyEvent-7.17 ... OK
Successfully installed AnyEvent-7.17
2 distributions installed
#####
However, on closer inspection I realized that 'make test' did not
exercise test file t/80_ssltest.t.
#####
[AnyEvent-7.17] $ bleadperl -Ilib -Iblib/lib t/80_ssltest.t
1..0 # SKIP no usable Net::SSLeay
#####
I then successfully installed Net::SSLeay version 1.88
#####
[blead] $ ./bin/cpanm Net::SSLeay
--> Working on Net::SSLeay
Fetching
http://www.cpan.org/authors/id/C/CH/CHRISN/Net-SSLeay-1.88.tar.gz ... OK
Configuring Net-SSLeay-1.88 ... OK
Building and testing Net-SSLeay-1.88 ... OK
Successfully installed Net-SSLeay-1.88
1 distribution installed
#####
I then re-tested AnyEvent-7.17. This time, t/80_ssltest.t was run --
but it failed one test.
#####
[blead] $ ./bin/cpanm --test-only AnyEvent
--> Working on AnyEvent
Fetching
http://www.cpan.org/authors/id/M/ML/MLEHMANN/AnyEvent-7.17.tar.gz ... OK
Configuring AnyEvent-7.17 ... OK
Building and testing AnyEvent-7.17 ... FAIL
! Testing AnyEvent failed. See
/home/jkeenan/.cpanm/work/1583026907.14938/build.log for details. Retry
with --force to force install it.
#####
Trimmed output from running that file with a 'prove' built against the
blead perl:
#####
[AnyEvent-7.17] $ bleadprove -vb t/80_ssltest.t
t/80_ssltest.t ..
1..415
ok 1 - mode 1
ok 2 - client_connect 1
ok 3 - server_connect 1
ok 4 - client_drain
ok 5 - line 1 <1>
not ok 6 - server_error <Connection reset by peer>
# Failed test 'server_error <Connection reset by peer>'
# at t/80_ssltest.t line 37.
ok 7 - mode 2
ok 8 - client_connect 2
ok 9 - server_connect 2
...
ok 414 - client_drain 5
ok 415 - server_eof
# Looks like you failed 1 test of 415.
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/415 subtests
Test Summary Report
-------------------
t/80_ssltest.t (Wstat: 256 Tests: 415 Failed: 1)
Failed test: 6
Non-zero exit status: 1
Files=1, Tests=415, 9 wallclock secs ( 0.09 usr 0.05 sys + 0.23 cusr
0.09 csys = 0.45 CPU)
Result: FAIL
#####
I got similar results when I tried this process on FreeBSD-12.
These results are consistent with certain CPANtesters reports on
AnyEvent filed by Slaven Rezić. Slaven got a PASS when he tested
AnyEvent-7.17 against blead on FreeBSD-13.0-current in this report:
#####
http://www.cpantesters.org/cpan/report/62353d08-592e-11ea-9b36-da1c1f24ea8f
#####
... but that test was apparently run without Net::SSLeay having already
been installed, leading to t/80_ssltest.t being skipped.
#####
t/80_ssltest.t ............. skipped: no usable Net::SSLeay
#####
However, on a CPANtesters rig on FreeBSD osvers=12.1-stable where
Net::SSLeay apparently already was installed, t/80_ssltest.t was run and
incurred the 1 test failure I reported above:
#####
http://www.cpantesters.org/cpan/report/c87e791a-5552-11ea-b981-16351f24ea8f
t/70_uv_09_multi.t ......... skipped: PERL_ANYEVENT_LOOP_TESTS not true
# Failed test 'server_error <Connection reset by peer>'
# at t/80_ssltest.t line 37.
# Looks like you failed 1 test of 415.
t/80_ssltest.t .............
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/415 subtests
t/81_hosts.t ............... ok
t/handle/01_readline.t ..... ok
t/handle/02_write.t ........ ok
t/handle/03_http_req.t ..... skipped: PERL_ANYEVENT_NET_TESTS
environment variable not set
t/handle/04_listen.t ....... ok
Test Summary Report
-------------------
t/80_ssltest.t (Wstat: 256 Tests: 415 Failed: 1)
Failed test: 6
Non-zero exit status: 1
Files=83, Tests=672, 14 wallclock secs ( 0.33 usr 0.27 sys + 1.99 cusr
0.51 csys = 3.09 CPU)
Result: FAIL
Failed 1/83 test programs. 1/672 subtests failed.
*** Error code 255
Stop.
make: stopped in /usr/home/cpansand/.cpan/build/2020022201/AnyEvent-7.17-0
#####
The test appears to fail only when '$mode == 1'. Please let me know if
there is any other information I can supply which will be helpful in
resolution of this issue.
Thank you very much.
Jim Keenan
More information about the anyevent
mailing list