- Change license to Apache-2.0.
- Altered the File.binary? method. It no longer accepts a second argument, having changed the way it checks for binary files internally, which is now much simpler.
- Added more image specs.
- Updated the File.bmp? method. It now looks at the first six bytes, and uses four of those bytes to verify the file size.
- Fixed a private access modifier that wasn't actually working as intended.
- Two Windows constants that were never meant for public consumption have been marked private.
- Minor tweak to one of the touch specs.
- The Gemfile now just uses the gemspec.
- The image? singleton method was effectively ignoring filename extensions. This has been fixed, though with the option to disable that check if desired.
- Switch from rdoc to markdown since github is not rendering rdoc properly.
- Added metadata to gemspec.
- Switched from test-unit to rspec, and reworked the tests bit in general.
- Removed the File.null method since Ruby has IO::NULL.
- Fixed a bug where the File.binary? method would bomb on a zero byte file. Thanks go to Alexandru Emil Lupu for the spot and patch.
- Remove Gemfile.lock from repo. You can generate that yourself locally if you want.
- Updated gemspec, added more versions to .travis.yml file, fixed typo. Thanks go to Al Snow for the updates.
- Fixed a bug where the File.binary? method would return true for utf16 or utf32 encoded files. Thanks go to Andrew McAndre for the spot.
- Updated cert.
- The File.image? method now checks against .ico files.
- Eliminated Fixnum warning that showed up in Ruby 2.4.x.
- Updated cert.
- The File.binary? method now lets you set your own percentage for the internal heuristic as an optional second argument.
- The VERSION constant is now frozen.
- Minor updates to the Rakefile and gemspec.
- Updated cert file.
- This gem is now signed.
- The Rakefile tasks now assume Rubygems 2.x.
- Update to the File.tail method that prevents potential line ending issues in JRuby.
- Added known issues with JRuby to the README.
- Fixed some potential issues with File.tail. Thanks go to Matt Hoyle for the patch.
- Made the File.tail method efficient. It's no longer slurpy, and it also no longer includes line endings in the result.
- Removed the File.middle method. I don't think it's useful.
- File.which now expands ~ for paths. Thanks go to dg-vrnetze for the patch.
- Use /dev/null for cygwin instead of NUL.
- Use mv instead of cp in the nl_convert method.
- Solaris now handled explicitly in nl_convert, and OSX now considered Unix.
- Modified the binary? method to check 4096 bytes at most.
- Thanks to Matt Hoyle for many of the changes implemented in this release.
- Updated the png? and jpg? methods so they explicitly specify the offset argument so that it works with 1.9.2 and earlier. Thanks go to Anurag Priyam for the spot.
- Added a Gemfile, mostly for Travis CI.
- Added rake as a development dependency.
- Revert back to hash syntax supported by 1.8.x.
- Removed rubyforge_project from gemspec.
- Updated the tests for File.sparse? so that it doesn't rely on an external file.
- The File.binary method now always returns false for images. It is meant to detect executables, shared objects, etc. Use File.image? to detect images.
- Encoding fixes for the File.image? method.
- Fixed a bug where File.binary? would return true for unicode text. Thanks go to Ben Hollis for the spot.
- Updated the win32-file and test-unit dependencies.
- Replace all instances of File.exists? with File.exist? because the former is deprecated in Ruby 2.1 and later.
- Yet another sparse file test fix for OSX, which does not support sparse file generation on HFS+.
- Fixed a bug in the File.whereis method on Windows when dealing with absolute paths.
- Some Config vs RbConfig fixes to silence 1.9.3 warnings.
- Refactored and cleaned up some tests.
- Added an (empty) .gemtest file so that it can be used with test.rubygems.org.
- Fixed a sparse file test.
- Added the File.sparse? method for Unix platforms. This method already exists on Windows courtesy of the win32-file library.
- Refactored File.which and File.whereis and added additional tests for each.
- Removed the block form of File.whereis.
- Reorganized the Rakefile a bit and put the test tasks under the 'test' namespace, and the gem tasks under the 'gem' namespace.
- Updated the test-unit development dependency.
- Updates the README.
- Fixed some bad variable names that crept into the File.nl_convert method.
- Added the File.null_device alias for File.null.
- Added cygwin and mingw to Windows detection code.
- One of the nlconvert tests is now skipped on Windows.
- Two text files that were previously bundled as part of this library for testing purposes have been removed. Those are now dynamically generated within the tests themselves.
- Gemspec updates.
- Documentation updates.
- Added the :gem rake task.
- Now compatible with Ruby 1.9.x.
- Replaced RUBY_PLATFORM with rbconfig check for the sake of other implementations, such as JRuby.
- Updated the tests to be more friendly to JRuby.
- Added Test::Unit 2.x as a development dependency.
- Renamed the test files.
- Fixed the File.touch method so that it doesn't whack existing files. Thanks go to Thomas Preymesser for the spot.
- Added corresponding tests to the tc_touch.rb file.
- Added the File.image? method. Inspired by ruby-talk: 260487.
- Removed the install.rb file. Installation is now handled exclusively by the rake install task.
- Updated the MANIFEST file, and made it rdoc friendly.
- Manual installation corrections in the README file.
- I changed the way that the constants IS_WINDOWS and WIN32EXTS are defined.
- The IS_WINDOWS and WIN32EXTS are no long documented publically. They were never meant for public use.
- The tc_constants.rb file was modified to only run certain tests on Windows.
- Fixed a require line that could cause problems on MS Windows.
- Added a Rakefile which includes tasks for installation and testing.
- Some cleanup and improvement in the various test files.
- Added the File.binary? method, based on code from Ryan Davis.
- Added the File.null method which returns the bit bucket on your platform.
- The suffixes on MS Windows are now based on the PATHEXT environment variable, and defaults to '.com', '.bat' and '.exe' only if it's not defined.
- The File.which and File.whereis methods were tweaked a bit for Windows so that they ignore the case of suffixes.
- Modified the platform checking and path separator handling.
- Added and tweaked some tests.
- Modified the File.middle method to accept an optional block.
- File.whereis is now limited to unique values so that redundant PATH entries do not cause redundant entries in the returned array (or block).
- File.nl_convert and File.touch now return self.
- File.nl_convert now raises ArgumentError (instead of StandardError) if an unknown platform is provided.
- File.wc now raises ArgumentError (instead of RuntimeError) if a bad option is provided.
- Made documentation rdoc friendly.
- Test suite updates, corrections and additions.
- Removed the INSTALL file. See the README instead.
- Moved project to RubyForge.
- Modified File#which and File#whereis for Win32 to handle extensions better, i.e. you can send "ruby" or "ruby.exe" and get back the same result.
- Minor test changes to tc_which.rb and tc_whereis.rb.
- Modified nl_convert() to allow the destination filename to be the same as the source file. In that case, a tempfile is used and copied back over the original file.
- The target file name for nl_convert() now defaults to the source file name and the default format is now "dos".
- Added a tc_constants.rb test suite.
- Test suite additions/fixes.
- Updates to MANIFEST.
- Modified File.tail to return data in the same order that 'tail' does.
- Modified File.which to return nil if the program is not found.
- Modified File.whereis now uses '' instead of '/' on MS Windows.
- Added File.middle class method.
- Test suite modification & additions.
- Thanks go to Shanko for both the spot and patch for tail, which, whereis and middle.
- Initial release