Code Review: gitpull3


#1

FYI Code review.

tfpt review “/shelveset:gitpull3;REDMOND\jdeville”
Comment :
Pulls in Shri and Jim’s changes from git:
Jim:
Some more changes. Mostly closing bugs and adding .NET interop tests.
Commit range is 90392fff to a39daeae on
git://github.com/jredville/ironruby.git. I rebased this time, so you
should be able to just grab that range and see only my diffs.

  • closing Rubyforge 15060
    
  • [#24589] $PROGRAM_NAME in 'English' not working now fixed
    
  • making $0 the same object as $PROGRAM_NAME and adding specs for 
    

it. Closes [#24589] $PROGRAM_NAME in ‘English’ not working

  • closing Rubyforge [#15061] tracking: create generic interface 
    

type

  • closing RubyForge [#15651] NoMethodError expected when calling 
    

the private method ‘initialize’ of a ruby class

  • added protected method invocation specs. Closes Rubyforge 
    

[#19118] Protected members not available when inheriting from CLR type

  • adding regression test for [#19872] IComparableOps.CompareTo 
    

throws argument error when type is Decimal

  • added reference support to csc.bat
    
  • closing [#17467] Accessing IronRuby method from C#
    
  • closing [#19950] Dir.glob doesn't handle **
    
  • closing [#20027] Formatting float to string produces incorrectly 
    

"Infinity"

  • closing [#20043] creating a generic type when the type is an 
    

interface

  • closing [#20052] Calculating 3.0/2.0 produces NaN
    
  • closing Rubyforge [#20263] Dir.glob doesn't handle missing 
    

folders

  • closing [#20410] GetKCodeName
    
  • adding test to ensure that File.stat returns a File::Stat object
    
  • closing Rubyforge [#20640] Calling File.open with an integer 
    

(File descriptor overload) causes the File.open site to be unusable

  • closing Rubyforge [#20664] Respecting visibility of methods. 
    

Also fixes a compilation error due to multiple IInterface definitions

  • Closing RubyForge [#20665] Can't use an indexer on a WPF 
    

ResourceDictionary

  • removing a tag for predefined
    
  • closing Rubyforge [#21943] NullRef exception thrown while 
    

comparing a list containing elements with overriden ==

  • closing Rubyforge [#21995] kind_of? not working with when extend 
    

is used

  • recommiting some changes that were reverted by the merge. 
    

Methinks someone in TFS changed them. This makes describe work with 2
strings for shared behaviors, and it makes csc output #line pragmas

  • fixing some more errors from the merge
    
  • Adding class instantiation specs for regular classes with 
    

overloaded constructors

  • adding regression tests for [#22197] calling super throw 
    

Argument Error

  • adding StringBuilder specs to get rid of test_basic.rb. Also 
    

added equal_clr_string matcher

  • refactor specs to use the equal_clr_string matcher
    
  • basic string specs to remove test_basic.rb
    
  • added more string specs to get rid of test_basic. Also adds 
    

field specs

  • adding some basic event add and remove specs
    
  • added event invocation specs
    

JD

Shri:
YAML should allow spaces. eg the trailing \s\t in
YAML.load("!timestamp ‘2009-03-22 00:00:00\s\t’") is allowed
Changed igem.bat, irake.bat, etc to work in dev environment where
ir.exe is not in the path
File.expand_path("~") should throw ArgumentError is HOME is not set

make orig_name, comment, and split close and finish

compile error when pull form irmain, merge in zlib

spec for finish, close, oriname, and trying to DRY orig_name and
comment

make orig_name, comment, close, and finish passed spec.

Implements File.chmod
File.readable? should return false if the given filename does not
exist
File.delete should be able to delete a read-only file. This is
implemented by making the file writable first. This is the only solution
I could find.
Added debugger visualizer for RubyObject so that VS will display the
result of to_s in the Watch window.
Adds the wrapper script Merlin\Main\Test\Scritps\ir.cmd so that the
Legacy tests (Ruby\Scripts\test.bat) can pass without any failures.


#2

Hmmm, duplicate code reviews now, one for when they are in a git branch,
and one for when we pull it into ironruby?