# Review: Rake bug fixes

**URL:** <https://www.ruby-forum.com/t/review-rake-bug-fixes/167827>\
**Category:** IronRuby\
**Created:** [May 13, 2009, 1:48am UTC](https://www.ruby-forum.com/t/review-rake-bug-fixes/167827 "2009-05-13T01:48:47Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Shri\_B](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/898d66/32.png) [@Shri\_B](https://www.ruby-forum.com/u/Shri_B)\
**Post date:** [May 13, 2009, 1:48am UTC](https://www.ruby-forum.com/t/review-rake-bug-fixes/167827/1 "2009-05-13T01:48:47Z")

</div>

> <https://github.com/shri-zz/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740>
>
> \- Renamed MutableString.Empty to MutableString.FixedEmpty to make it clear that …the instance should be shared in limited scenarios
> Fixes to Module#instance\_method per Tomas's feedback from previous code review
> File.extname(".foo") should return "", not ".foo"
> Removes to\_proc hack from Libs\\hacks.rb

- 

```
    Changed some uses of MutableString.Empty (like Array#join with 

```

empty array) to create a new empty string as the user could validly  
mutate it.

- 

```
     Renamed MutableString.Empty to MutableString.FixedEmpty to 

```

make it clear that the instance should be shared in limited scenarios

- 

```
    Fixes to Module#instance_method per Tomas's feedback from 

```

previous code review

- 

```
    File.extname(".foo") should return "", not ".foo"

```

- 

```
    Removes to_proc hack from Libs\hacks.rb

```

Files changed

- 

Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/ironruby-tags/core/file/extname\_tags.txt  
\*  
Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/ironruby-tags/core/file/split\_tags.txt[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-1](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-1)  
\*  
Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/ironruby-tags/core/module/instance\_method\_tags.txt[http://github.com/shri/ironruby/tree/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740/Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/ironruby-tags/core/module/instance\_method\_tags.txt](http://github.com/shri/ironruby/tree/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740/Merlin/External.LCA_RESTRICTED/Languages/IronRuby/mspec/ironruby-tags/core/module/instance_method_tags.txt)  
\*  
Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/rubyspec/core/file/extname\_spec.rb[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-3](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-3)  
\*  
Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/rubyspec/core/file/split\_spec.rb[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-4](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-4)  
\*  
Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/rubyspec/core/module/fixtures/classes.rb[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-5](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-5)  
\*  
Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/rubyspec/core/module/instance\_method\_spec.rb[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-6](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-6)  
\*  
Merlin/Main/Languages/Ruby/Libraries.LCA\_RESTRICTED/Builtins/FileOps.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-7](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-7)  
\*  
Merlin/Main/Languages/Ruby/Libraries.LCA\_RESTRICTED/Builtins/ModuleOps.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-8](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-8)  
\*  
Merlin/Main/Languages/Ruby/Libraries.LCA\_RESTRICTED/Builtins/MutableStringOps.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-9](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-9)  
\*  
Merlin/Main/Languages/Ruby/Libraries.LCA\_RESTRICTED/Builtins/UnboundMethod.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-10](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-10)  
\*  
Merlin/Main/Languages/Ruby/Libraries.LCA\_RESTRICTED/Extensions/IListOps.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-11](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-11)  
\*  
Merlin/Main/Languages/Ruby/Libraries.LCA\_RESTRICTED/ParseTree/IronRubyParseTreeOps.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-12](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-12)  
\*  
Merlin/Main/Languages/Ruby/Libraries.LCA\_RESTRICTED/StringScanner/StringScanner.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-13](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-13)  
\*  
Merlin/Main/Languages/Ruby/Libs/hacks.rb[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-14](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-14)  
\*  
Merlin/Main/Languages/Ruby/Ruby/Builtins/MatchData.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-15](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-15)  
\*  
Merlin/Main/Languages/Ruby/Ruby/Builtins/MutableString.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-16](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-16)  
\*  
Merlin/Main/Languages/Ruby/Ruby/Builtins/RubyClass.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-17](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-17)  
\*  
Merlin/Main/Languages/Ruby/Ruby/Builtins/RubyModule.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-18](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-18)  
\*  
Merlin/Main/Languages/Ruby/Ruby/Runtime/RubyOps.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-19](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-19)  
\*  
Merlin/Main/Languages/Ruby/Scripts/irtests.bat[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-20](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-20)  
\*  
Merlin/Main/Languages/Ruby/Tests/Interop/uncategorized\_spec.rb[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-21](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-21)  
Thanks,  
Shri

---

<div class="post-metadata">

**Author:** ![Shri\_B](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/898d66/32.png) [@Shri\_B](https://www.ruby-forum.com/u/Shri_B)\
**Post date:** [May 13, 2009, 11:14pm UTC](https://www.ruby-forum.com/t/review-rake-bug-fixes/167827/2 "2009-05-13T23:14:21Z")

</div>

Looks good!

Tomas

From: Shri B.  
Sent: Tuesday, May 12, 2009 4:48 PM  
To: removed\_email\_address@domain.invalid; IronRuby External Code R.  
Subject: Review: Rake bug fixes

> <https://github.com/shri-zz/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740>
>
> \- Renamed MutableString.Empty to MutableString.FixedEmpty to make it clear that …the instance should be shared in limited scenarios
> Fixes to Module#instance\_method per Tomas's feedback from previous code review
> File.extname(".foo") should return "", not ".foo"
> Removes to\_proc hack from Libs\\hacks.rb

- 

```
    Changed some uses of MutableString.Empty (like Array#join with 

```

empty array) to create a new empty string as the user could validly  
mutate it.

- 

```
     Renamed MutableString.Empty to MutableString.FixedEmpty to 

```

make it clear that the instance should be shared in limited scenarios

- 

```
    Fixes to Module#instance_method per Tomas's feedback from 

```

previous code review

- 

```
    File.extname(".foo") should return "", not ".foo"

```

- 

```
    Removes to_proc hack from Libs\hacks.rb

```

Files changed

- 

Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/ironruby-tags/core/file/extname\_tags.txt  
\*  
Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/ironruby-tags/core/file/split\_tags.txt[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-1](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-1)  
\*  
Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/ironruby-tags/core/module/instance\_method\_tags.txt[http://github.com/shri/ironruby/tree/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740/Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/ironruby-tags/core/module/instance\_method\_tags.txt](http://github.com/shri/ironruby/tree/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740/Merlin/External.LCA_RESTRICTED/Languages/IronRuby/mspec/ironruby-tags/core/module/instance_method_tags.txt)  
\*  
Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/rubyspec/core/file/extname\_spec.rb[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-3](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-3)  
\*  
Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/rubyspec/core/file/split\_spec.rb[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-4](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-4)  
\*  
Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/rubyspec/core/module/fixtures/classes.rb[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-5](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-5)  
\*  
Merlin/External.LCA\_RESTRICTED/Languages/IronRuby/mspec/rubyspec/core/module/instance\_method\_spec.rb[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-6](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-6)  
\*  
Merlin/Main/Languages/Ruby/Libraries.LCA\_RESTRICTED/Builtins/FileOps.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-7](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-7)  
\*  
Merlin/Main/Languages/Ruby/Libraries.LCA\_RESTRICTED/Builtins/ModuleOps.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-8](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-8)  
\*  
Merlin/Main/Languages/Ruby/Libraries.LCA\_RESTRICTED/Builtins/MutableStringOps.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-9](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-9)  
\*  
Merlin/Main/Languages/Ruby/Libraries.LCA\_RESTRICTED/Builtins/UnboundMethod.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-10](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-10)  
\*  
Merlin/Main/Languages/Ruby/Libraries.LCA\_RESTRICTED/Extensions/IListOps.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-11](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-11)  
\*  
Merlin/Main/Languages/Ruby/Libraries.LCA\_RESTRICTED/ParseTree/IronRubyParseTreeOps.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-12](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-12)  
\*  
Merlin/Main/Languages/Ruby/Libraries.LCA\_RESTRICTED/StringScanner/StringScanner.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-13](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-13)  
\*  
Merlin/Main/Languages/Ruby/Libs/hacks.rb[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-14](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-14)  
\*  
Merlin/Main/Languages/Ruby/Ruby/Builtins/MatchData.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-15](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-15)  
\*  
Merlin/Main/Languages/Ruby/Ruby/Builtins/MutableString.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-16](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-16)  
\*  
Merlin/Main/Languages/Ruby/Ruby/Builtins/RubyClass.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-17](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-17)  
\*  
Merlin/Main/Languages/Ruby/Ruby/Builtins/RubyModule.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-18](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-18)  
\*  
Merlin/Main/Languages/Ruby/Ruby/Runtime/RubyOps.cs[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-19](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-19)  
\*  
Merlin/Main/Languages/Ruby/Scripts/irtests.bat[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-20](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-20)  
\*  
Merlin/Main/Languages/Ruby/Tests/Interop/uncategorized\_spec.rb[http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-21](http://github.com/shri/ironruby/commit/94a7a95fb6eba0a8f19dd74b866dbe6ff7dd6740#diff-21)  
Thanks,  
Shri
