В библиотеке ruby net / imap есть ошибка, которая появляется при подключении к Yahoo.
Исправление является простым и описано здесь:
http://redmine.ruby -lang.org / вопросы / 4509
По сути, отредактируйте imap.rb и измените внутренний цикл метода search_response с:
token = lookahead
case token.symbol
when T_CRLF
break
when T_SPACE
shift_token
end
data.push(number)
до:
token = lookahead
case token.symbol
when T_CRLF
break
when T_SPACE
shift_token
else
data.push(number)
end
, затем протестируйте со следующим кодом:
require 'net/imap'
Net::IMAP.debug = true
conn = Net::IMAP.new('imap.mail.yahoo.com', 143, false)
conn.instance_eval { send_command('ID ("GUID" "1")') }
conn.authenticate('LOGIN', ARGV[0], ARGV[1] )
conn.select("INBOX")
uids = conn.uid_search(['ALL'])
puts uids.join(',')
conn.logout
conn.disconnect