[Ironruby-core] Code Review: mspec-12

Tomas Matousek Tomas.Matousek at microsoft.com
Thu Jun 26 19:47:15 EDT 2008

1) There is some garbage in IronRuby.Tests.csproj.

2) Kernel#printf:
It shouldn't look-up $stdin variable by name. Instead, RbExecContext.StandardOutput should be used. Also "write" should be invoked dynamically.

$a = []
class << $stdout
  def write *args
    $a << args

alias $stdout $foo
printf("%d %d", 1, 2)

class << STDOUT
  remove_method :write

p $a

class Foo
  attr_accessor :initialize

p Foo.private_instance_methods(false)
p Foo.public_instance_methods(false)


Attribute setter is not private.

4) Yaml initializers shouldn't be empty.


-----Original Message-----
From: John Lam (IRONRUBY)
Sent: Thursday, June 26, 2008 3:54 PM
To: IronRuby External Code Reviewers
Cc: ironruby-core at rubyforge.org
Subject: Code Review: mspec-12

tfpt review "/shelveset:mspec-12;REDMOND\jflam"

Fixes to enable RubySpecs running in SNAP

  - Implementation of Kernel#exec
  - Fixes bugs in Kernel#exit! - calling incorrect overload
  - Implementation of Kernel#printf
  - Fixes bug in setting visibility of methods defined through attr_* methods (now public)
  - Adds overloads for File#open to handle name, modenum case and fixes a big in how IO#open was delegating to File constructors
  - Defines a FileTestOps class (does nothing right now)
  - Adds a Process#euid method that always returns 0 (need to understand whether detecting admin under windows is possible / realistic using this method)
  - Adds a RUBY_PATCHLEVEL constant and sets it to 0
  - Fixes bug in exit n where we were failing to return n as exit code
  - Added a new RubyTestKey.snk which just contains our public key - in preparation for removing transform for SIGNED in to_svn rake task
  - A few baseline exclusion changes for existing specs

More information about the Ironruby-core mailing list