= Change Log Below is a complete listing of changes for each revision of FasterCSV. == 1.1.1 * Added a :force_quotes output option. == 1.1.0 * Added empty?(), length(), and size() methods to FasterCSV::Row and FasterCSV::Table. * Cleaned up bug fix regression tests. * Fixed bug causing Arrays to be returned for blank rows when header processing is active. * Added a :skip_blanks option for ignoring empty rows. == 1.0.0 * Fixed FasterCSV.rewind() to reset the FasterCSV.lineno() counter. * Fixed FasterCSV.rewind() to reset the header processing. * Fixed documentation typos. * Switched STDOUT and STDERR usage to $stdout and $stderr where appropriate. * Added FasterCSV::Row.==(). * Enhanced FasterCSV::Row.fields() to support Ranges, even for headers. * The slurping methods now return the new FasterCSV::Table objects. * Fixed parser so multibyte :col_sep works now. * Added a few examples for usage. == 0.2.1 * Removed autorequire from GemSpec. * Made Rakefile VERSION aware. * General Rakefile cleanup. == 0.2.0 * Added VERSION constant. * Significantly improved test speed. * Worked around Date::parse() bug so tests will pass on Windows. * Documented test procedure. * Made FasterCSV.lineno() CSV aware. * Added line numbers to MalformedCSVError messages. * :headers can now be set to an Array of headers to use. * :headers can now be set to an external CSV String of headers to use. * Added an :unconverted_fields options, so those can be returned when needed. * Provided support for the serialization of custom Ruby objects using CSV. * Added CSV drop-in interface. * Added header information to FieldInfo Struct for conversions by header. * Added an alias to support require "fastercsv". * Added FCSV alias for FasterCSV. * Added FasterCSV::instance() and FasterCSV()/FCSV() shortcuts for easy output. == 0.1.9 * Fixing the require "English" bug. == 0.1.8 * Converted FasterCSV.filter() to use ARGF for input. * Made FasterCSV.<<() aware of FasterCSV::Row objects. * Switched header rows to include the unconverted headers as fields. * Rescued IOError when trying to auto detect a line-ending on an output stream and used the default system line-ending. * Added FasterCSV::Row.header_row?() and FasterCSV::Row.field_row?(). == 0.1.6 * Began using a forked development/stable versioning system. * Reorganized initialization code for easier additions and maintenance. * Added a check for unknown options. Exceptions will now be thrown for them. * Added built-in and custom data converters. Built-in handle numbers and dates. * Added Array#to_csv and String#parse_csv. Both accept normal options. * Project moved to RubyForge Subversion. * Added auto-discovery for :row_sep (now the default). * Added FasterCSV::filter() for easy Unix-like CSV filters. * Added support for accessing fields by headers. * Headers can have their own converters. * Headers can be skipped or returned as needed. * FasterCSV::Row allows index or header access while retaining order and allowing for duplicate headers. == 0.1.4 * Fixed :col_sep escaping bug (reported by Kev Jackson). * Switched to the use of named parsers internally. == 0.1.3 * Fixed typo in gem spec causing a require bug. == 0.1.2 * Built gem with Ruby 1.8.2, to bypass YAML/RubyGems issue. == 0.1.1 * Built gem with Ruby 1.8.4 Preview 1, to _try_ and bypass YAML/RubyGems issue. * Added missing test file to released packages. * Clarified call-seq documentation for open() and parse(). * Clarified passed String positions for new(), in documentation. * Expanded generate() to handle appending to an existing String. == 0.1.0 * Initial public release.