Change Log
Below is a complete listing of changes for each revision of FasterCSV.
1.2.0
- Added the FasterCSV::table() shortcut.
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