Today I landed a very large set of commits that port a subset of MRI’s
IO+encoding logic. The goal is to get all IO-related
encoding/transcoding behavior working, plus logic that depends on IO
encoding/transcoding.
All tests are passing, after a couple weeks work. Not everything from
MRI has been ported; specifically, I did not go through all IO
methods, since most delegate back to a few specific ones (read, write,
getline, etc). Additional porting may be warranted if there’s IO
methods that still need work.
Because of the scope of this work, Tom and I decided to delay JRuby
1.7.5 (originally planned for release before JRubyConfEU). We have
opted to let this work stabilize and potentially work through
remaining IO/encoding/transcoding tests that do not pass before the
1.7.5 release, so it can be as solid as possible.
If you have projects that use IO or encoding or transcoding heavily,
now is a great time to test against JRuby master. Please do so
- Charlie