Dancer::Plugin::Email problem with checking email failures
Hello, I'm having problems checking the return status of email sending with "Dancer::Plugin::Email" . The first example in the "code recipes" of "Dancer::Plugin::Email" shows the following: ---- post '/contact' => sub { my $msg = email { to => '...', subject => '...', message => $msg, encoding => 'base64', attach => [ '/path/to/file' ] }; warn $msg->{string} if $msg->{type} eq 'failure'; }; ---- This is the actual code I used: --- get '/emailtest' => sub { my $msg = email { to => 'gordon\@cshl.edu', subject => 'Dancer::PlugIn::Email Test', message => "Hello World from Dancer::Plugin::Email", }; warn $msg->{string} if $msg->{type} eq 'failure'; return "Email Sent!\n"; }; --- This is the error I get: ------------ Warning caught during route execution: Use of uninitialized value in string eq at /home/gordon/projects/perl_dancer_test/user_email_verification/lib/user_email_verification.pm line 80. /home/gordon/projects/perl_dancer_test/user_email_verification/lib/user_email_verification.pm around line 80 77 subject => 'Dancer::PlugIn::Email Test', 78 message => "Hello World from Dancer::Plugin::Email", 79 }; 80 warn $msg->{string} if $msg->{type} eq 'failure'; 81 return "Email Sent!\n"; 82 }; 83 ----------- Trying to dig a little deeper, it seems "$msg" is a "Return::Value" object, and that class is deprecated. Also, "$msg->{type}" returns an empty string (so it's not the problem), but "$msg->{string}" returns undef. and "Data::Dumper($msg)" gives: ----- $VAR1 = bless( { 'prop' => {}, 'string' => 'success', 'type' => 'success', 'errno' => undef }, 'Return::Value' ); ---- I'm using Perl 5.10.1 , Dancer 1.3702, Dancer::Plugin::Email 0.1300 . Any suggestions how to solve this ? Thanks! -gordon
On Mon, Sep 12, 2011 at 3:23 PM, Assaf Gordon <gordon@cshl.edu> wrote:
Hello,
I'm having problems checking the return status of email sending with "Dancer::Plugin::Email" .
The first example in the "code recipes" of "Dancer::Plugin::Email" shows the following: ---- post '/contact' => sub {
my $msg = email { to => '...', subject => '...', message => $msg, encoding => 'base64', attach => [ '/path/to/file' ] };
warn $msg->{string} if $msg->{type} eq 'failure';
}; ----
This is the actual code I used: --- get '/emailtest' => sub { my $msg = email { to => 'gordon\@cshl.edu', subject => 'Dancer::PlugIn::Email Test', message => "Hello World from Dancer::Plugin::Email", }; warn $msg->{string} if $msg->{type} eq 'failure'; return "Email Sent!\n"; }; ---
This is the error I get: ------------ Warning caught during route execution: Use of uninitialized value in string eq at /home/gordon/projects/perl_dancer_test/user_email_verification/lib/user_email_verification.pm line 80.
/home/gordon/projects/perl_dancer_test/user_email_verification/lib/user_email_verification.pm around line 80 77 subject => 'Dancer::PlugIn::Email Test', 78 message => "Hello World from Dancer::Plugin::Email", 79 }; 80 warn $msg->{string} if $msg->{type} eq 'failure'; 81 return "Email Sent!\n"; 82 }; 83 -----------
Trying to dig a little deeper, it seems "$msg" is a "Return::Value" object, and that class is deprecated.
Also, "$msg->{type}" returns an empty string (so it's not the problem), but "$msg->{string}" returns undef. and "Data::Dumper($msg)" gives: ----- $VAR1 = bless( { 'prop' => {}, 'string' => 'success', 'type' => 'success', 'errno' => undef }, 'Return::Value' ); ----
I'm using Perl 5.10.1 , Dancer 1.3702, Dancer::Plugin::Email 0.1300 .
Any suggestions how to solve this ?
Thanks! -gordon
Can you create a ticket with this info at https://github.com/ironcamel/Dancer-Plugin-Email/issues -Naveed
participants (2)
-
Assaf Gordon -
Naveed Massjouni