Subject: | JSON serialiser broken with old JSON module |
Date: | Thu, 21 Nov 2013 12:36:58 +0000 |
To: | bug-Dancer [...] rt.cpan.org |
From: | Zefram <zefram [...] fysh.org> |
Dancer-1.3119 has an undeclared dependency on a recent version of JSON,
or at least an undeclared incompatibility with old versions of JSON.
With JSON-2.59 installed, I got these test failures:
t/01_config/01_settings.t ...................... 1/11 core - serializer - JSON is needed and is not installed at /opt/perl-5.18.1/cpan/build/Dancer-1.3119-zhXqkv/blib/lib/Dancer/Serializer.pm line 31.
# Looks like you planned 11 tests but ran 9.
# Looks like your test exited with 255 just after 9.
Recursive inheritance detected in package 'Types::Serialiser::BooleanBase' during global destruction.
t/01_config/01_settings.t ...................... Dubious, test returned 22 (wstat 5632, 0x1600)
Failed 2/11 subtests
t/01_config/05_serializers.t ................... 1/9 core - serializer - JSON is needed and is not installed at t/01_config/05_serializers.t line 25.
# Looks like you planned 9 tests but ran 3.
# Looks like your test exited with 255 just after 3.
Recursive inheritance detected in package 'Types::Serialiser::BooleanBase' during global destruction.
t/01_config/05_serializers.t ................... Dubious, test returned 22 (wstat 5632, 0x1600)
Failed 6/9 subtests
t/03_route_handler/08_errors.t ................. 1/12 core - serializer - JSON is needed and is not installed at /opt/perl-5.18.1/cpan/build/Dancer-1.3119-zhXqkv/blib/lib/Dancer/Serializer.pm line 31.
# Looks like you planned 12 tests but ran 2.
# Looks like your test exited with 255 just after 2.
Recursive inheritance detected in package 'Types::Serialiser::BooleanBase' during global destruction.
t/03_route_handler/08_errors.t ................. Dubious, test returned 22 (wstat 5632, 0x1600)
Failed 10/12 subtests
t/12_response/03_charset.t ..................... 1/16 core - serializer - JSON is needed and is not installed at /opt/perl-5.18.1/cpan/build/Dancer-1.3119-zhXqkv/blib/lib/Dancer/Serializer.pm line 31.
# Looks like you planned 16 tests but ran 10.
# Looks like your test exited with 255 just after 10.
Recursive inheritance detected in package 'Types::Serialiser::BooleanBase' during global destruction.
t/12_response/03_charset.t ..................... Dubious, test returned 22 (wstat 5632, 0x1600)
Failed 6/16 subtests
t/12_response/06_filter_halt_status.t .......... core - serializer - JSON is needed and is not installed at /opt/perl-5.18.1/cpan/build/Dancer-1.3119-zhXqkv/blib/lib/Dancer/Serializer.pm line 31.
Recursive inheritance detected in package 'Types::Serialiser::BooleanBase' during global destruction.
t/12_response/06_filter_halt_status.t .......... Dubious, test returned 22 (wstat 5632, 0x1600)
No subtests run
t/14_serializer/01_helpers.t ................... 1/53 Recursive inheritance detected in package 'Types::Serialiser::BooleanBase' during global destruction.
t/14_serializer/01_helpers.t ................... Dubious, test returned 22 (wstat 5632, 0x1600)
All 53 subtests passed
(less 27 skipped subtests: 26 okay)
t/14_serializer/02_request_json.t .............. core - serializer - JSON is needed and is not installed at /opt/perl-5.18.1/cpan/build/Dancer-1.3119-zhXqkv/blib/lib/Dancer/Serializer.pm line 31.
# Looks like your test exited with 255 before it could output anything.
Recursive inheritance detected in package 'Types::Serialiser::BooleanBase' during global destruction.
t/14_serializer/02_request_json.t .............. Dubious, test returned 22 (wstat 5632, 0x1600)
Failed 11/11 subtests
t/14_serializer/05_request_mutable.t ........... malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "An internal error oc...") at (eval 95) line 161.
# Looks like your test exited with 2 before it could output anything.
Recursive inheritance detected in package 'Types::Serialiser::BooleanBase' during global destruction.
t/14_serializer/05_request_mutable.t ........... Dubious, test returned 22 (wstat 5632, 0x1600)
Failed 6/6 subtests
t/14_serializer/06_api.t ....................... core - serializer - JSON is needed and is not installed at /opt/perl-5.18.1/cpan/build/Dancer-1.3119-zhXqkv/blib/lib/Dancer/Serializer.pm line 31.
# Looks like your test exited with 255 before it could output anything.
Recursive inheritance detected in package 'Types::Serialiser::BooleanBase' during global destruction.
t/14_serializer/06_api.t ....................... Dubious, test returned 22 (wstat 5632, 0x1600)
Failed 16/16 subtests
t/14_serializer/17_clear_serializer.t .......... core - serializer - JSON is needed and is not installed at /opt/perl-5.18.1/cpan/build/Dancer-1.3119-zhXqkv/blib/lib/Dancer/Serializer.pm line 31.
# Looks like your test exited with 255 before it could output anything.
Recursive inheritance detected in package 'Types::Serialiser::BooleanBase' during global destruction.
t/14_serializer/17_clear_serializer.t .......... Dubious, test returned 22 (wstat 5632, 0x1600)
Failed 4/4 subtests
t/14_serializer/99_bugs.t ...................... core - serializer - JSON is needed and is not installed at /opt/perl-5.18.1/cpan/build/Dancer-1.3119-zhXqkv/blib/lib/Dancer/Serializer.pm line 31.
# Looks like your test exited with 255 before it could output anything.
Recursive inheritance detected in package 'Types::Serialiser::BooleanBase' during global destruction.
t/14_serializer/99_bugs.t ...................... Dubious, test returned 22 (wstat 5632, 0x1600)
Failed 13/13 subtests
t/22_hooks/06_serializer.t ..................... core - serializer - JSON is needed and is not installed at /opt/perl-5.18.1/cpan/build/Dancer-1.3119-zhXqkv/blib/lib/Dancer/Serializer.pm line 31.
Recursive inheritance detected in package 'Types::Serialiser::BooleanBase' during global destruction.
t/22_hooks/06_serializer.t ..................... Dubious, test returned 22 (wstat 5632, 0x1600)
No subtests run
Test Summary Report
-------------------
t/01_config/01_settings.t (Wstat: 5632 Tests: 9 Failed: 0)
Non-zero exit status: 22
Parse errors: Bad plan. You planned 11 tests but ran 9.
t/01_config/05_serializers.t (Wstat: 5632 Tests: 3 Failed: 0)
Non-zero exit status: 22
Parse errors: Bad plan. You planned 9 tests but ran 3.
t/03_route_handler/08_errors.t (Wstat: 5632 Tests: 2 Failed: 0)
Non-zero exit status: 22
Parse errors: Bad plan. You planned 12 tests but ran 2.
t/12_response/03_charset.t (Wstat: 5632 Tests: 10 Failed: 0)
Non-zero exit status: 22
Parse errors: Bad plan. You planned 16 tests but ran 10.
t/12_response/06_filter_halt_status.t (Wstat: 5632 Tests: 0 Failed: 0)
Non-zero exit status: 22
Parse errors: No plan found in TAP output
t/14_serializer/01_helpers.t (Wstat: 5632 Tests: 53 Failed: 0)
Non-zero exit status: 22
t/14_serializer/02_request_json.t (Wstat: 5632 Tests: 0 Failed: 0)
Non-zero exit status: 22
Parse errors: Bad plan. You planned 11 tests but ran 0.
t/14_serializer/05_request_mutable.t (Wstat: 5632 Tests: 0 Failed: 0)
Non-zero exit status: 22
Parse errors: Bad plan. You planned 6 tests but ran 0.
t/14_serializer/06_api.t (Wstat: 5632 Tests: 0 Failed: 0)
Non-zero exit status: 22
Parse errors: Bad plan. You planned 16 tests but ran 0.
t/14_serializer/17_clear_serializer.t (Wstat: 5632 Tests: 0 Failed: 0)
Non-zero exit status: 22
Parse errors: Bad plan. You planned 4 tests but ran 0.
t/14_serializer/99_bugs.t (Wstat: 5632 Tests: 0 Failed: 0)
Non-zero exit status: 22
Parse errors: Bad plan. You planned 13 tests but ran 0.
t/22_hooks/06_serializer.t (Wstat: 5632 Tests: 0 Failed: 0)
Non-zero exit status: 22
Parse errors: No plan found in TAP output
Files=204, Tests=1870, 29 wallclock secs ( 0.77 usr 0.15 sys + 24.36 cusr 2.29 csys = 27.57 CPU)
Result: FAIL
Failed 12/204 test programs. 0/1870 subtests failed.
Installed versions of modules mentioned in META.json were:
Encode 2.55
ExtUtils::MakeMaker 6.82
File::Basename 2.84
File::Spec 3.40
HTTP::Body 1.17
HTTP::Server::Simple::PSGI 0.16
LWP 6.05
MIME::Types 2.02
Module::Runtime 0.013
Test::More 1.001002
Time::HiRes 1.9726
Try::Tiny 0.18
URI 1.60
I note that META.json doesn't mention any JSON module. I actually had
JSON-2.59 installed. Upgrading to JSON-2.90 resolved the test failures.
I think Dancer's META.json should declare a dependency on a sufficiently
recent version of JSON.
-zefram