Skip Menu |

This queue is for tickets about the CatalystX-SimpleLogin CPAN distribution.

Report information
The Basics
Id: 113157
Status: resolved
Priority: 0/
Queue: CatalystX-SimpleLogin

People
Owner: Nobody in particular
Requestors: ZHTWN [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: 0.20



Subject: compilation failure with Perl debugger in 5.22.1
When this module is loaded in the perl debugger in version 5.22.1, it fails to compile. It succeeds in 5.18.4 and 5.20.3. The error seems to show that the autoboxing from Moose::Autobox is not being applied properly to the login_form_class_roles arrayref attribute, so the ->flatten call fails. all versions are up to date with CPAN, including: CatalystX::SimpleLogin 0.19 Moose::Autobox 0.15 Here's the error: % perl -Ilib -d t/01-live-test.t Loading DB routines from perl5db.pl version 1.49 Editor support available. Enter h or 'h h' for help, or 'man perldebug' for more help. [warn] Attempted to use view 'TestApp::View::HTML', but does not exist Couldn't instantiate component "TestApp::Controller::Login", "Can't call method "flatten" on unblessed reference at /home/noel/perl5/perlbrew/perls/perl-5.22.1/lib/site_perl/5.22.1/Catalyst/Test.pm line 155. at /home/noel/perl5/perlbrew/perls/perl-5.22.1/lib/site_perl/5.22.1/Catalyst/Test.pm line 29. Catalyst::Test::_build_request_export("Catalyst::Test", HASH(0x3863bb8)) called at /home/noel/perl5/perlbrew/perls/perl-5.22.1/lib/site_perl/5.22.1/Catalyst/Test.pm line 95 Catalyst::Test::__ANON__[/home/noel/perl5/perlbrew/perls/perl-5.22.1/lib/site_perl/5.22.1/Catalyst/Test.pm:136]("Catalyst::Test", "all", HASH(0x3863d08), HASH(0x3863ab0)) called at /home/noel/perl5/perlbrew/perls/perl-5.22.1/lib/site_perl/5.22.1/Sub/Exporter.pm line 108 Sub::Exporter::_expand_group("Catalyst::Test", HASH(0x382d4a0), ARRAY(0x3863a68), HASH(0x3863ab0), HASH(0x3863eb8), HASH(0x37b12f0)) called at /home/noel/perl5/perlbrew/perls/perl-5.22.1/lib/site_perl/5.22.1/Sub/Exporter.pm line 39 Sub::Exporter::_expand_groups("Catalyst::Test", HASH(0x382d4a0), ARRAY(0x3863228), HASH(0x3863ab0)) called at /home/noel/perl5/perlbrew/perls/perl-5.22.1/lib/site_perl/5.22.1/Sub/Exporter.pm line 323 Sub::Exporter::__ANON__[/home/noel/perl5/perlbrew/perls/perl-5.22.1/lib/site_perl/5.22.1/Sub/Exporter.pm:337]("Catalyst::Test", "-all", HASH(0x20ff620)) called at /home/noel/perl5/perlbrew/perls/perl-5.22.1/lib/site_perl/5.22.1/Catalyst/Test.pm line 155 Catalyst::Test::import("Catalyst::Test", "TestApp") called at t/01-live-test.t line 12 main::BEGIN() called at t/01-live-test.t line 12 eval {...} called at t/01-live-test.t line 12 BEGIN failed--compilation aborted at t/01-live-test.t line 12. at t/01-live-test.t line 12. # Looks like your test exited with 255 before it could output anything. Debugged program terminated. Use q to quit or R to restart, use o inhibit_exit to avoid stopping after program termination, h q, h R or h o to get additional info.
"flatten" is a method provided by Moose::Autobox, suggesting that it should have been loaded but isn't. I'd recommend moving away from autobox though, as it adds magic syntax that can cause complications, especially in debugging. Test code should be as simple as possible.
Subject: Re: [rt.cpan.org #113157] compilation failure with Perl debugger in 5.22.1
Date: Fri, 18 Mar 2016 16:40:09 -0400
To: bug-CatalystX-SimpleLogin [...] rt.cpan.org
From: Noel Maddy <zhtwnpanta [...] gmail.com>
Sorry for the lack of clarity in the report. The bug is the usage of Moose::Autobox in the main CatalystX::SimpleLogin application, not in any tests. Any application that uses CatalystX::SimpleLogin in 5.22.1 will get the same compile failure when run under the Perl debugger. The test I used as an example is from CatalystX::SimpleLogin itself, to show the failure in a simple, repeatable way. On Fri, Mar 18, 2016 at 3:48 PM, Karen Etheridge via RT < bug-CatalystX-SimpleLogin@rt.cpan.org> wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=113157 > > > "flatten" is a method provided by Moose::Autobox, suggesting that it > should have been loaded but isn't. > > I'd recommend moving away from autobox though, as it adds magic syntax > that can cause complications, especially in debugging. Test code should be > as simple as possible. >
On Fri Mar 18 15:48:00 2016, ETHER wrote: Show quoted text
> "flatten" is a method provided by Moose::Autobox, suggesting that it > should have been loaded but isn't. > > I'd recommend moving away from autobox though, as it adds magic syntax > that can cause complications, especially in debugging. Test code > should be as simple as possible.
Agreed. And I'd be delighted if this mess could be fixed. We've a local workaround, but using autobox in production code? Ugh :(
I've removed the usage of Moose::Autobox in commit eec14b9, the fix will be in version 0.20.
I've removed the usage of Moose::Autobox in commit eec14b9, the fix will be in version 0.20.
I've removed the usage of Moose::Autobox in commit eec14b9, the fix will be in version 0.20.
I've removed the usage of Moose::Autobox in commit eec14b9, the fix will be in version 0.20.
I've removed the usage of Moose::Autobox in commit eec14b9, the fix will be in version 0.20.
I've removed the usage of Moose::Autobox in commit eec14b9, the fix will be in version 0.20.
I've removed the usage of Moose::Autobox in commit eec14b9, the fix will be in version 0.20.
I've removed the usage of Moose::Autobox in commit eec14b9, the fix will be in version 0.20.