[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sup-devel] [sup-talk] turnsole alpha preview



Hello there,

I'd like to give you some backtraces of the problems that occur when I
use heliotrope/turnsole. I have absolutely no knowledge in ruby, so I
hope this will help everyone who is developing

I'd like to point out a few problems about turnsole :
- you need to install the 'locale' gem
- I happen to have a 256colors terminal (rxvt-unicode-256color), and
the "color!" method in ncurses-patch.rb seems to fail :

>rakoo@Otokar % ruby -Ilib -I ../heliotrope/lib bin/turnsole
>/home/rakoo/src/turnsole/lib/turnsole/ncurses-patches.rb:19:in `block in <module:Curses>': undefined method `color!' for Curses:Module (NoMethodError)
>	from /home/rakoo/src/turnsole/lib/turnsole/ncurses-patches.rb:19:in `times'
>	from /home/rakoo/src/turnsole/lib/turnsole/ncurses-patches.rb:19:in `<module:Curses>'
>	from /home/rakoo/src/turnsole/lib/turnsole/ncurses-patches.rb:1:in `<top (required)>'
>	from <internal:lib/rubygems/custom_require>:29:in `require'
>	from <internal:lib/rubygems/custom_require>:29:in `require'
>	from /home/rakoo/src/turnsole/lib/turnsole.rb:16:in `<top (required)>'
>	from <internal:lib/rubygems/custom_require>:29:in `require'
>	from <internal:lib/rubygems/custom_require>:29:in `require'
>	from bin/turnsole:5:in `<main>'

- When I switch back to xterm with 8 colors, the previous error
doesn't occur (the if test fais), but I have a problem with "gpgkey" :

rakoo@Otokar % ruby -I lib -I ../heliotrope/lib bin/turnsole
>/home/rakoo/src/turnsole/lib/turnsole/accounts.rb:39:in `block in add_account': undefined method `gpgkey' for nil:NilClass (NoMethodError)
>        from /home/rakoo/src/turnsole/lib/turnsole/accounts.rb:39:in `each'
>        from /home/rakoo/src/turnsole/lib/turnsole/accounts.rb:39:in `add_account'
>        from /home/rakoo/src/turnsole/lib/turnsole/accounts.rb:25:in `initialize'
>        from /home/rakoo/src/turnsole/lib/turnsole.rb:96:in `new'
>        from /home/rakoo/src/turnsole/lib/turnsole.rb:96:in `setup!'
>        from bin/turnsole:75:in `<main>'

These happened with ruby v1.8 and 1.9.2, and gems v1.3.7.

Now with heliotrope, I have the problems with the encoding :
- When I search for words with "é", I have an error :

>HeliotropeServer::RequestError - can't parse query: parse error: line 1: syntax error, unexpected $end, expecting WORD:
> bin/heliotrope-server:137:in `rescue in block in <class:HeliotropeServer>'
> bin/heliotrope-server:114:in `block in <class:HeliotropeServer>'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:1126:in `call'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:1126:in `block in compile!'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:709:in `instance_eval'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:709:in `route_eval'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:693:in `block (2 levels) in route!'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:741:in `block in process_route'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:738:in `catch'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:738:in `process_route'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:692:in `block in route!'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:691:in `each'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:691:in `route!'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:826:in `dispatch!'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:619:in `block in call!'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:791:in `instance_eval'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:791:in `block in invoke'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:791:in `catch'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:791:in `invoke'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:619:in `call!'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:604:in `call'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/showexceptions.rb:21:in `call'
> /usr/lib/ruby/gems/1.9.1/gems/rack-1.2.2/lib/rack/lint.rb:48:in `_call'
> /usr/lib/ruby/gems/1.9.1/gems/rack-1.2.2/lib/rack/lint.rb:36:in `call'
> /usr/lib/ruby/gems/1.9.1/gems/rack-1.2.2/lib/rack/showexceptions.rb:24:in `call'
> /usr/lib/ruby/gems/1.9.1/gems/rack-1.2.2/lib/rack/commonlogger.rb:18:in `call'
> /usr/lib/ruby/gems/1.9.1/gems/rack-1.2.2/lib/rack/content_length.rb:13:in `call'
> /usr/lib/ruby/gems/1.9.1/gems/rack-1.2.2/lib/rack/handler/webrick.rb:52:in `service'
> /usr/lib/ruby/1.9.1/webrick/httpserver.rb:111:in `service'
> /usr/lib/ruby/1.9.1/webrick/httpserver.rb:70:in `run'
> /usr/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'
>127.0.0.1 - - [03/Apr/2011 00:24:50] "GET /search?q=%22%C3%A9%22 HTTP/1.1" 500 82586 0.0504
>Otokar - - [03/Apr/2011:00:24:50 CEST] "GET /search?q=%22%C3%A9%22 HTTP/1.1" 500 82586
>http://localhost:8042/search?q=%22zegzaegsg%22 -> /search?q=%22%C3%A9%22

- an error also happens when I want to see some messages, that doesn't
happen when I use ruby v1.8 instead :

>ArgumentError - invalid byte sequence in UTF-8:
> /usr/lib/ruby/gems/1.9.1/gems/rmail-1.0.0/lib/rmail/parser.rb:217:in `split'
> /usr/lib/ruby/gems/1.9.1/gems/rmail-1.0.0/lib/rmail/parser.rb:217:in `parse_header'
> /usr/lib/ruby/gems/1.9.1/gems/rmail-1.0.0/lib/rmail/parser.rb:194:in `parse_low'
> /usr/lib/ruby/gems/1.9.1/gems/rmail-1.0.0/lib/rmail/parser.rb:183:in `parse'
> /usr/lib/ruby/gems/1.9.1/gems/rmail-1.0.0/lib/rmail/parser.rb:331:in `parse'
> /usr/lib/ruby/gems/1.9.1/gems/rmail-1.0.0/lib/rmail/parser.rb:345:in `read'
> /home/rakoo/src/heliotrope/lib/heliotrope/message.rb:17:in `parse!'
> bin/heliotrope-server:292:in `load_actual_message'
> bin/heliotrope-server:297:in `message_to_html'
> bin/heliotrope-server:209:in `block in <class:HeliotropeServer>'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:1125:in `call'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:1125:in `block in compile!'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:709:in `instance_eval'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:709:in `route_eval'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:693:in `block (2 levels) in route!'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:741:in `block in process_route'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:738:in `catch'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:738:in `process_route'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:692:in `block in route!'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:691:in `each'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:691:in `route!'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:826:in `dispatch!'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:619:in `block in call!'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:791:in `instance_eval'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:791:in `block in invoke'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:791:in `catch'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:791:in `invoke'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:619:in `call!'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/base.rb:604:in `call'
> /usr/lib/ruby/gems/1.9.1/gems/sinatra-1.2.1/lib/sinatra/showexceptions.rb:21:in `call'
> /usr/lib/ruby/gems/1.9.1/gems/rack-1.2.2/lib/rack/lint.rb:48:in `_call'
> /usr/lib/ruby/gems/1.9.1/gems/rack-1.2.2/lib/rack/lint.rb:36:in `call'
> /usr/lib/ruby/gems/1.9.1/gems/rack-1.2.2/lib/rack/showexceptions.rb:24:in `call'
> /usr/lib/ruby/gems/1.9.1/gems/rack-1.2.2/lib/rack/commonlogger.rb:18:in `call'
> /usr/lib/ruby/gems/1.9.1/gems/rack-1.2.2/lib/rack/content_length.rb:13:in `call'
> /usr/lib/ruby/gems/1.9.1/gems/rack-1.2.2/lib/rack/handler/webrick.rb:52:in `service'
> /usr/lib/ruby/1.9.1/webrick/httpserver.rb:111:in `service'
> /usr/lib/ruby/1.9.1/webrick/httpserver.rb:70:in `run'
> /usr/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'

These problems seem to happen because of my mails being encoded in
UTF-8. When the charset is "ISO-8859-1" or "US-ASCII", they appear
fine. But I do think everyone should use UTF-8.

In a totallly unrelated note, do you plan on syncing back heliotrope
work with the maildir directory ? Just to know.

Thank you for your sweet coding,

-- 
Matthieu RAKOTOJAONA
_______________________________________________
Sup-devel mailing list
Sup-devel@rubyforge.org
http://rubyforge.org/mailman/listinfo/sup-devel