[MacRuby] #1399: Rake exceptions always print a full trace

MacRuby ruby-noreply at macosforge.org
Mon Oct 3 21:09:50 PDT 2011


#1399: Rake exceptions always print a full trace
--------------------------------+-------------------------------------------
 Reporter:  joshaber@…          |       Owner:  lsansonetti@…        
     Type:  defect              |      Status:  new                  
 Priority:  major               |   Milestone:                       
Component:  MacRuby             |    Keywords:                       
--------------------------------+-------------------------------------------
 The `rake` that comes with MacRuby (both 0.10 and the nightly) seems to
 always print a full trace when a task raises an exception. For example, if
 I run:

 {{{
 task :blah do
   raise Exception, 'whatev'
 end
 }}}

 With MacRuby, I get:

 {{{
 rake aborted!
 whatev
 /Volumes/GitHub/Mac/blah/rakefile:2:in `block'
 /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/1.9.2/rake.rb:632:in
 `block'
 /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/1.9.2/rake.rb:629:in
 `execute'
 /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/1.9.2/rake.rb:595:in
 `block'
 /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/1.9.2/monitor.rb:201:in
 `synchronize'
 /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/1.9.2/rake.rb:588:in
 `invoke_with_call_chain'
 /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/1.9.2/rake.rb:581:in
 `invoke'
 /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/1.9.2/rake.rb:2042:in
 `invoke_task'
 /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/1.9.2/rake.rb:2020:in
 `block'
 /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/1.9.2/rake.rb:2020:in
 `block'
 /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/1.9.2/rake.rb:2059:in
 `standard_exception_handling'
 /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/1.9.2/rake.rb:2014:in
 `top_level'
 /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/1.9.2/rake.rb:1993:in
 `run'
 /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/bin/macrake:31:in
 `<main>'
 }}}

 If I run with Ruby 1.9.2, I get:

 {{{
 rake aborted!
 whatev

 Tasks: TOP => blah
 (See full trace by running task with --trace)
 }}}

 If I use that --trace argument, the output is essentially like MacRuby's.

 So in other words. MacRuby's `rake` always behaves like Ruby 1.9.2's `rake
 --trace`.

 This is pretty annoying when running tests because it's a lot of noise
 every time I have a failing test. It makes parsing (both for a tool and
 for me!) harder since I have to ignore all the useless stack trace.

-- 
Ticket URL: <http://www.macruby.org/trac/ticket/1399>
MacRuby <http://macruby.org/>



More information about the macruby-tickets mailing list