uperl / AnyEvent-WebSocket-Client

WebSocket client for AnyEvent
9 stars 10 forks source link

Failure on Perl 5.8.x #19

Closed plicease closed 7 years ago

plicease commented 9 years ago

Tests started failing in travis on Perl 5.8.9. Double checked that this happens in 0.30 as well, so this does not have to do with the recent changes to remove deprecated functions (going out to CPAN on Sunday or later). I suspect a non-core module dependency because it didn't fail before and at least one of my older Perl installs (with older modules) did not fail.

twin% prove -l
t/00_diag.t .......................... 1/1 #
#
#
# HARNESS_ACTIVE=1
# HARNESS_VERSION=3.35
# LANG=en_US.utf8
# LC_COLLATE=C
# MANPATH_WITHOUT_PERLBREW=/home/ollisg/.perlbrew/libs/perl-5.8.9t@dev/man:/home/ollisg/.perlbrew/libs/perl-5.23.3@dev/man:/home/ollisg/.perlbrew/libs/perl-5.23.3@dev/man:/home/ollisg/opt/rust/1.0.0/share/man:/home/ollisg/opt/clang/3.6.1/share/man:/home/ollisg/opt/clang/3.4.2/share/man:/home/ollisg/opt/clang/3.4/share/man:/usr/local/man:/usr/local/share/man:/usr/share/man
# PATH_WITHOUT_PERLBREW=/home/ollisg/opt/rust/1.3.0/bin:/home/ollisg/opt/sbt/bin:/home/ollisg/opt/scala/2.11.1/bin:/home/ollisg/opt/clang/3.6.1/bin:/home/ollisg/opt/rust/1.0.0/bin:/home/ollisg/opt/clang/3.4.2/bin:/home/ollisg/opt/rust/1.0.0alpha/bin:/home/ollisg/bin:/home/ollisg/opt/rust/0.9/bin:/home/ollisg/opt/pkg-config/0.28/bin:/home/ollisg/opt/clang/3.4/bin:/usr/lib/ccache:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
# PERL5LIB=/home/ollisg/dev/AnyEvent-WebSocket-Client/lib:/home/ollisg/.perlbrew/libs/perl-5.8.9@dev/lib/perl5
# PERLBREW_CSHRC_VERSION=0.67
# PERLBREW_HOME=/home/ollisg/.perlbrew
# PERLBREW_LIB=dev
# PERLBREW_MANPATH=/home/ollisg/.perlbrew/libs/perl-5.8.9@dev/man:/home/ollisg/perl5/perlbrew/perls/perl-5.8.9/man
# PERLBREW_PATH=/home/ollisg/.perlbrew/libs/perl-5.8.9@dev/bin:/home/ollisg/perl5/perlbrew/bin:/home/ollisg/perl5/perlbrew/perls/perl-5.8.9/bin
# PERLBREW_PERL=perl-5.8.9
# PERLBREW_ROOT=/home/ollisg/perl5/perlbrew
# PERLBREW_VERSION=0.67
# PERL_CPANM_OPT=--mirror http://mirror.sydney.wdlabs.com/cpan/ --mirror-only
# PERL_LOCAL_LIB_ROOT=/home/ollisg/.perlbrew/libs/perl-5.8.9@dev
# PERL_MB_OPT=--install_base /home/ollisg/.perlbrew/libs/perl-5.8.9@dev
# PERL_MM_OPT=INSTALL_BASE=/home/ollisg/.perlbrew/libs/perl-5.8.9@dev
# PERL_PKG_CONFIG_SCRIPTS=ppkg-config
# SHELL=/bin/tcsh
#
#
#
# PERL5LIB path
# /home/ollisg/dev/AnyEvent-WebSocket-Client/lib
# /home/ollisg/.perlbrew/libs/perl-5.8.9@dev/lib/perl5
#
#
#
# perl
PuTTY# AE                   7.11
# AnyEvent             7.11
# Devel::Cycle         1.12
# EV                   4.21
# FindBin              1.49
# IO::Socket::SSL      2.020
# Math::Random::Secure 0.06
# Module::Build        0.4214
# Mojolicious          -
# Moo                  2.000002
# Net::SSLeay          1.72
# PerlX::Maybe         1.001
# PerlX::Maybe::XS     1.001
# Protocol::WebSocket  0.18
# Test::Memory::Cycle  1.04
# Test::More           1.001014
# Test::Warn           0.30
# URI                  1.67
# URI::ws              0.03
#
#
#
t/00_diag.t .......................... ok
t/ae.t ............................... ok
t/ae_ssl.t ........................... ok
t/client_masked.t .................... ok
t/connection_after_close.t ...........     # timeout!
    # Child (it should not send after sending close frame) exited without calling finalize()

    #   Failed test 'it should not send after sending close frame'
    #   at /home/ollisg/dev/AnyEvent-WebSocket-Client/t/testlib/Server.pm line 20.
    # Tests were run but no plan was declared and done_testing() was not seen.
    # Looks like your test exited with 2 just after 1.
t/connection_after_close.t ........... Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
t/connection_callback_send.t ......... ok
t/connection_counter_close.t ......... ok
t/connection_counter_shutdown.t ...... ok
t/connection_destroy_in_callbacks.t .. ok
t/connection_finish_callback.t .......     # timeout!
    # Child (delete conn 1) exited without calling finalize()

    #   Failed test 'delete conn 1'
    #   at /home/ollisg/dev/AnyEvent-WebSocket-Client/t/testlib/Server.pm line 20.
    # Tests were run but no plan was declared and done_testing() was not seen.
    # Looks like your test exited with 2 just after 1.
t/connection_finish_callback.t ....... Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
t/connection_huge_message.t .......... ok
t/connection_masked.t ................ ok
t/connection_ping_pong.t ............. ok
t/echo.t ............................. ok
t/message.t .......................... ok
t/mojo.t ............................. skipped: Requires Mojolicious 3.0
t/mojo_close.t ....................... skipped: Requires Mojolicious 3.0
t/mojo_echo.t ........................ skipped: Requires Mojolicious 3.0
t/mojo_recieve.t ..................... skipped: Requires Mojolicious 3.0
t/mojo_scope.t ....................... skipped: Requires Mojolicious 3.0
t/mojo_ssl.t ......................... skipped: Requires Mojolicious 3.0
t/new.t .............................. ok
t/server_initial_data.t .............. ok
t/use.t .............................. ok

Test Summary Report
-------------------
t/connection_after_close.t         (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
t/connection_finish_callback.t     (Wstat: 512 Tests: 0 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
Files=24, Tests=37, 63 wallclock secs ( 0.09 usr  0.03 sys +  2.37 cusr  0.22 csys =  2.71 CPU)
Result: FAIL
plicease commented 9 years ago

I do not have the time or interest at the moment in supporting 5.8.x, but I've opened this bug in case someone wants to coordinate with me on it. Patches welcome :)

plicease commented 9 years ago

This is showing up in the cpantesters matrix now too. Consistently on all versions of Perl prior to 5.10.0

http://fast-matrix.cpantesters.org/?dist=AnyEvent-WebSocket-Client%200.31

plicease commented 8 years ago

Downgrading to AnyEvent 6.14 seems to fix this.

plicease commented 7 years ago

Test suite has changed, but this still happens:

https://gist.github.com/64a97ca0bb694f125d1bd5f124597ff5

plicease commented 7 years ago

This may "fix" it:

dc0d658137189ed8ad224013694df476a2438448

Lets see what cpantesters says. In the very least it doesn't change anything on Perl 5.10.0 and better where stuff is already working.

plicease commented 7 years ago

Seems to work now. We can reopen if it reappears.