Subject: | Doesn't get any messages |
This small program:
#!/usr/bin/perl -wT
use strict;
use warnings;
use diagnostics;
use Mail::Client::Yahoo;
my $y = Mail::Client::Yahoo->login(username => 'foo', password => 'bar');
$y->select_folder('Inbox');
foreach($y->message_list()) {
my $h = $y->message_head($_);
# $h is of type Mail::Header
print $h->get('Subject');
print "\n";
}
$y->logout();
Fails with this message:
Use of uninitialized value in string eq at
/usr/local/share/perl/5.10.1/Mail/Client/Yahoo.pm line 229 (#1)
(W uninitialized) An undefined value was used as if it were already
defined. It was interpreted as a "" or a 0, but maybe it was a mistake.
To suppress this warning assign a defined value to your variables.
To help you figure out what was undefined, perl will try to tell you the
name of the variable (if any) that was undefined. In some cases it
cannot
do this, so it also tells you what operation you used the undefined
value
in. Note, however, that perl optimizes your program and the operation
displayed in the warning may not necessarily appear literally in your
program. For example, "that $foo" is usually optimized into "that "
. $foo, and the warning will refer to the concatenation (.) operator,
even though there is no . in your program.
Uncaught exception from user code:
Select Folder failed on Folder Stats Retrieval: Not Found at
/usr/local/share/perl/5.10.1/Mail/Client/Yahoo.pm line 133.
at /usr/local/share/perl/5.10.1/Mail/Client/Yahoo.pm line 133
Mail::Client::Yahoo::__ANON__('Select Folder failed on Folder Stats
Retrieval: Not Found') called at
/usr/local/share/perl/5.10.1/Mail/Client/Yahoo.pm line 133
Mail::Client::Yahoo::__ANON__('Error ', 'GET', 'ing ',
'URI::http=SCALAR(0x173d048)', ': ', 'Not Found') called at
/usr/local/share/perl/5.10.1/WWW/Mechanize.pm line 2692
WWW::Mechanize::die('Mail::Client::Yahoo::Mechanize=HASH(0x186f6f8)',
'Error ', 'GET', 'ing ', 'URI::http=SCALAR(0x173d048)', ': ', 'Not
Found') called at /usr/local/share/perl/5.10.1/WWW/Mechanize.pm line 2342
WWW::Mechanize::_update_page('Mail::Client::Yahoo::Mechanize=HASH(0x186f6f8)', 'HTTP::Request=HASH(0x173c988)', 'HTTP::Response=HASH(0x1ef4fd8)') called at /usr/local/share/perl/5.10.1/WWW/Mechanize.pm line 2206
WWW::Mechanize::request('Mail::Client::Yahoo::Mechanize=HASH(0x186f6f8)', 'HTTP::Request=HASH(0x173c988)') called at /usr/local/share/perl/5.10.1/LWP/UserAgent.pm line 389
LWP::UserAgent::get('Mail::Client::Yahoo::Mechanize=HASH(0x186f6f8)',
'http://uk.mg1.mail.yahoo.com/dc/Folders') called at
/usr/local/share/perl/5.10.1/WWW/Mechanize.pm line 407
WWW::Mechanize::get('Mail::Client::Yahoo::Mechanize=HASH(0x186f6f8)',
'Folders') called at /usr/local/share/perl/5.10.1/Mail/Client/Yahoo.pm
line 518
Mail::Client::Yahoo::Mechanize::get('Mail::Client::Yahoo::Mechanize=HASH(0x186f6f8)', 'Folders') called at /usr/local/share/perl/5.10.1/Mail/Client/Yahoo.pm line 198
Mail::Client::Yahoo::_fetch_folder_stats('Mail::Client::Yahoo=HASH(0xb55d68)') called at /usr/local/share/perl/5.10.1/Mail/Client/Yahoo.pm line 233
Mail::Client::Yahoo::select_folder('Mail::Client::Yahoo=HASH(0xb55d68)', 'Inbox') called at ./yahoo line 10
(in cleanup) Can't call method "get" on an undefined value at
/usr/local/share/perl/5.10.1/Mail/Client/Yahoo.pm line 184 during global
destruction.