public
Description: A collection of better replacements for Ruby standard libaries
Homepage:
Clone URL: git://github.com/FooBarWidget/better.git
better /
name age message
file .gitignore Thu Aug 20 09:10:17 -0700 2009 Add documentation and override feature [Hongli Lai (Phusion)]
file LICENSE Thu Aug 20 10:40:13 -0700 2009 Improve documentation, add license. [Hongli Lai (Phusion)]
file README.rdoc Thu Aug 20 11:49:39 -0700 2009 Add installation instructions [Hongli Lai (Phusion)]
file Rakefile Thu Aug 20 12:07:09 -0700 2009 Do not create rdoc for Tempfile::CreationError. [Hongli Lai (Phusion)]
file better.gemspec Thu Aug 20 10:43:16 -0700 2009 Add gem specification [Hongli Lai (Phusion)]
directory lib/ Thu Aug 20 12:07:09 -0700 2009 Do not create rdoc for Tempfile::CreationError. [Hongli Lai (Phusion)]
directory test/ Thu Aug 20 10:31:16 -0700 2009 Switch back to Mocha, improve documentation, ad... [Hongli Lai (Phusion)]
README.rdoc

Overview

Better is a collection of better replacements Ruby standard libraries. The versions shipped with Ruby have problems, which this library intends to fix. It is my wish that this code will one day find its way back to upstream Ruby.

Usage

Install with:

  gem install better

All of the libraries in Better are drop-in replacement and have the exact same API as the original, and work on both Ruby 1.8 and 1.9. For example, instead of

  require 'tempfile'
  Tempfile.new(...)

you just prefix the library filename with ‘better/’ and the class name with ‘Better::’:

  require 'better/tempfile'
  Better::Tempfile.new(...)

Or you can even override the standard version by requiring the library with the ‘better/override/’ prefix:

  require 'better/override/tempfile'
  Tempfile  # => now refers to Better::Tempfile instead of ::Tempfile

This last feature should of course be used with care.

Please refer to the individual classes for more documentation.

Contributing

The Github repository is located at github.com/FooBarWidget/better/tree/master. Is there a Ruby standard library that you think can be improved? Just fork the repository and start hacking! It doesn’t matter whether you want to fix a small bug, want to write unit tests or just want to improve documentation - anything is fine.

You can contact me at:

  • Hongli Lai (hongli@phusion.nl)