Review: String#% and File.rename


#1

http://github.com/Jirapong/ironruby/commit/1eb5b389d849c5464f8d89090c7476a96f05c21e
(Jirapong’s fix)


(my fixes)

(merge with irmain HEAD)

GitDiff.bat fb6f89146e331a9f20f444d5ca94478dfce7f555
2cb2802a316c48721875204aa83cf5d0fa85cf3f

  •     Jirapong's fix for File.new when file already exists
    
  •     Fixed another bug in String#%
    
  •     Bugs in File.rename
    
  •     Ruby should exit when main thread exits, even if other threads 
    

are still alive

  •     Mapped Errno::ENOENT to FleNotFoundException, and ENOTDIR to 
    

DirectoryNotFoundException

Files changed:

Merlin/External/Languages/IronRuby/mspec/ironruby-tags/core/string/modulo_tags.txthttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-0
*
Merlin/External/Languages/IronRuby/mspec/rubyspec/core/file/rename_spec.rbhttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-1
*
Merlin/External/Languages/IronRuby/mspec/rubyspec/core/string/modulo_spec.rbhttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-2
*
Merlin/External/Languages/IronRuby/mspec/rubyspec/core/thread/new_spec.rbhttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-3
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/Dir.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-4
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/Errno.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-5
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/FileOps.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-6
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/IoOps.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-7
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/KernelOps.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-8
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/StringFormatter.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-9
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/ThreadOps.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-10
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Initializers.Generated.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-11
*
Merlin/Main/Languages/Ruby/Tests/Interop/uncategorized_spec.rbhttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-12

  • Merlin/Main/Languages/Ruby/Tests/Interop/uncategorized_specs.rb

Merlin/Users/sborde/Dev.bathttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-14
Thanks,
Shri


#2

Looks good.

Tomas

From: Shri B.
Sent: Thursday, April 09, 2009 12:06 PM
To: IronRuby External Code R.
Cc: removed_email_address@domain.invalid
Subject: Review: String#% and File.rename

http://github.com/Jirapong/ironruby/commit/1eb5b389d849c5464f8d89090c7476a96f05c21e
(Jirapong’s fix)
http://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f
(my fixes)
http://github.com/shri/ironruby/commit/e8f840f5c800fa62f4987b8904569491ae9a8ba0
(merge with irmain HEAD)

GitDiff.bat fb6f89146e331a9f20f444d5ca94478dfce7f555
2cb2802a316c48721875204aa83cf5d0fa85cf3f

  •     Jirapong's fix for File.new when file already exists
    
  •     Fixed another bug in String#%
    
  •     Bugs in File.rename
    
  •     Ruby should exit when main thread exits, even if other threads 
    

are still alive

  •     Mapped Errno::ENOENT to FleNotFoundException, and ENOTDIR to 
    

DirectoryNotFoundException

Files changed:

Merlin/External/Languages/IronRuby/mspec/ironruby-tags/core/string/modulo_tags.txthttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-0
*
Merlin/External/Languages/IronRuby/mspec/rubyspec/core/file/rename_spec.rbhttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-1
*
Merlin/External/Languages/IronRuby/mspec/rubyspec/core/string/modulo_spec.rbhttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-2
*
Merlin/External/Languages/IronRuby/mspec/rubyspec/core/thread/new_spec.rbhttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-3
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/Dir.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-4
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/Errno.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-5
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/FileOps.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-6
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/IoOps.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-7
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/KernelOps.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-8
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/StringFormatter.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-9
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/ThreadOps.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-10
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Initializers.Generated.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-11
*
Merlin/Main/Languages/Ruby/Tests/Interop/uncategorized_spec.rbhttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-12

  • Merlin/Main/Languages/Ruby/Tests/Interop/uncategorized_specs.rb

Merlin/Users/sborde/Dev.bathttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-14
Thanks,
Shri


#3

I would suggest using FileUtils.rm_rf instead of remove_dir at
http://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#L1R13

You also don’t need to require fileutils as it is required as part of
MSpec.

JD

From: Shri B.
Sent: Thursday, April 09, 2009 12:06 PM
To: IronRuby External Code R.
Cc: removed_email_address@domain.invalid
Subject: Review: String#% and File.rename

http://github.com/Jirapong/ironruby/commit/1eb5b389d849c5464f8d89090c7476a96f05c21e
(Jirapong’s fix)
http://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f
(my fixes)
http://github.com/shri/ironruby/commit/e8f840f5c800fa62f4987b8904569491ae9a8ba0
(merge with irmain HEAD)

GitDiff.bat fb6f89146e331a9f20f444d5ca94478dfce7f555
2cb2802a316c48721875204aa83cf5d0fa85cf3f

  •     Jirapong's fix for File.new when file already exists
    
  •     Fixed another bug in String#%
    
  •     Bugs in File.rename
    
  •     Ruby should exit when main thread exits, even if other threads 
    

are still alive

  •     Mapped Errno::ENOENT to FleNotFoundException, and ENOTDIR to 
    

DirectoryNotFoundException

Files changed:

Merlin/External/Languages/IronRuby/mspec/ironruby-tags/core/string/modulo_tags.txthttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-0
*
Merlin/External/Languages/IronRuby/mspec/rubyspec/core/file/rename_spec.rbhttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-1
*
Merlin/External/Languages/IronRuby/mspec/rubyspec/core/string/modulo_spec.rbhttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-2
*
Merlin/External/Languages/IronRuby/mspec/rubyspec/core/thread/new_spec.rbhttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-3
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/Dir.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-4
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/Errno.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-5
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/FileOps.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-6
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/IoOps.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-7
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/KernelOps.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-8
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/StringFormatter.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-9
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/ThreadOps.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-10
*
Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Initializers.Generated.cshttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-11
*
Merlin/Main/Languages/Ruby/Tests/Interop/uncategorized_spec.rbhttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-12

  • Merlin/Main/Languages/Ruby/Tests/Interop/uncategorized_specs.rb

Merlin/Users/sborde/Dev.bathttp://github.com/shri/ironruby/commit/2cb2802a316c48721875204aa83cf5d0fa85cf3f#diff-14
Thanks,
Shri