- Replaced the C versions of IO.pread and IO.pwrite singleton methods with pure Ruby wrappers since core Ruby has implemented instance method versions since Ruby 2.5. These now require filehandles (rather than fileno) as an argument.
- Removed the pread_ptr method, I don't think anyone was using it. Might get added back if there are complaints.
- Removed the DIRECT constant since that is now defined by core Ruby.
- Moved the VERSION constant into the pure Ruby file.
- Now requires Ruby 2.5 or later.
- Added a LICENSE file as required by the Apache-2.0 license.
- The 'io-extra' file is now the preferred way to require this library.
- Now assumes Ruby 2.1 or later. This has no effect on the external API, but it does allow for lots of internal cleanup.
- License changed to Apache-2.0.
- The EXTRA_VERSION constant is now frozen.
- Added the io-extra.rb file for convenience.
- Updates to the gemspec, including the addition of metadata.
- The Rakefile now assumes Rubygems 2.0 or later.
- Added a cert.
- Removed the .gemtest file.
- Updated for compatibility with Ruby 2.2.x.
- Direct IO is now supported on Darwin, and some bugs in the directio methods have been fixed. Thanks go to Genki Takiuchi for the patches.
- Fixed a bug in fdwalk and closefrom when using Ruby 1.9.3 where closing reserved file descriptors would segfault the interpreter. Thanks go to Eric Wong for the patch.
- Fixed a bug in the fdwalk method where it was not honoring the lowfd argument, and added a test for it.
- The rb_thread_call_without_gvl function is now used internally in place of rb_thread_blocking_region for Ruby 2.x.
- Fixed a potential memory leak in the pread_ptr method where malloc'ed memory was not freed if the pread function call failed. Thanks go to Eric Wong for the spot.
- Added the IO#ttyname method.
- Added the (empty) .gemtest file for test.rubygems.org.
- Use rb_thread_blocking_region internally for IO.pread and IO.pwrite. Thanks go to Eric Wong for the patch.
- Use NUM2OFFT where appropriate. Fixes potential 32 vs 64 bit issues. Thanks go to Eric Wong for the spot and patch.
- Added an example program for IO.pread, and a corresponding Rake task.
- Config substituted with RbConfig, since the former is apparently going to deprecated in 1.9. Thanks go to Eric Wong for the spot and patch.
- Documentation updates to the README.
- Updates to the Rakefile, including archive tasks, a default task, and tweaks to the clean task.
- Added the IO.writev method which allows you to write arrays without requiring an Array#join call, i.e. "gather write". Thanks go to Eric Wong for supplying the code to support this.
- Some Rakefile updates.
- Some README updates
- Updates to the gemspec.
- Added the gem:build and gem:install rake task.
- Source code moved to github.
- Several Linux compatibility fixes, all provided by Eric Wong.
- Now compatible with 1.9.x thanks to Eric Wong.
- Bug fix for IO.pread - memory leak and null byte behavior spotted and fixed by Eric Wong.
- Changed license to Artistic 2.0.
- Added test-unit 2.x as a development dependency.
- Several tests were updated to use features from test-unit 2.x.
- Fixed the 'example' rake task.
- Added the IO.pread_ptr method. This returns the buffer address rather than the buffer itself.
- Added limited support for OS X.
- Minor refactoring of the IO.pread method.
- Added IO.pread and IO.pwrite methods for those platforms that support them.
- Fixed a warning that could occur in the IO#directio method.
- Some updates the README, CHANGES, and test files.
- Added a Rakefile with tasks for testing and installation.
- Some doc updates and internal reorganization, but no significant code changes.
- Fixed an "implicit declaration" build warning (the man page was mistaken about the header file I should use).
- Minor updates to the example program.
- Added a gemspec.
- Added or improved the inline rdoc comments in the source.
- Moved project to RubyForge.
- Added a CHANGES file.
- Initial release