Code Review: trace-5

tfpt review “/shelveset:trace-5;REDMOND\jflam”

FYI - reviewed F2F w/Tomas.

Work to enable IronRuby tracing. This is part of a larger effort to diff
execution traces of Rails between IronRuby and MRI to track down bugs.

Just a clarification rather than anything else. In KernelOps.cs you
added
this new method…

  •    [RubyMethod("to_a")]
    
  •    public static RubyArray/*!*/ ToA(RubyScope/*!*/ scope, object 
    

self)
{

  •        // Return an array that contains self
    
  •        RubyArray result = new RubyArray(new object[] { self });
    
  •        return scope.ExecutionContext.TaintObjectBy(result, self);
    
  •    }
    

I noticed that you have used the RubyScope special parameter here but
that
you are only using it to get hold of the ExecutionContext. My
understanding
was that the RubyExecutionContext will be merged into the RubyContext at
some point soon. Would it not be better to just use the RubyContext
object
in the parameter list then?

Also, I note that Ruby 1.8.7 has been released (although not for Ruby
One
Click Installer yet). Is IronRuby going to move toward this version or
are
we sticking with 1.8.6 until we go for 1.9?

Cheers,
Pete