A lot of water flowed through many rivers and a lot of tests have been executed since 1.10. I'll show the highlights ...
My reason to join PerlMonks many eons ago was to get a grasp on what CSV problems were encountered by users of CSV parsers, and I am so happy with all the feedback I got both here and in the ChatterBox.
THANK YOU ALL!
The git repo now has a documentation section with preformatted HTML en MarkDown.
1.35 - 2018-03-21
- Make detect_bom result available
- Add csv (out => \"skip") - suppress output deliberately
- Allow sub as top-level filter
1.34 - 2017-11-05
- Bad arg for formula (like "craok") will now die with error 1500
- Add a prominent section about BOM handling
- Make sheet label more portable (csv2xlsx)
- Allow munge => \%hash
- Preserve first row in csv (set_column_names => 0)
1.33 - 2017-10-19
- Add support for formula actions (issue 11)
1.32 - 2017-09-15
- Add keep_headers attribute to csv ()
- Fail on invalid arguments to csv
- Fix header method on EOL = CR (RT#122764)
1.31 - 2017-06-13
- Fix already decoded BOM in headers
- New options in csv-check
- "escape" is alias for "escape_char" for consistency.
- Improve csv-check auto-sep-detection
1.30 - 2017-06-08
- Disable escape_null for undefined escape_char
- Fix ->say for bound columns (RT#121576)
1.29 - 2017-04-25
- New attribute "strict" (also addresses RT#121350)
1.28 - 2017-03-22
- Fix length problem with bound empty fields and UTF-8 (RT#120655)
1.27 - 2017-03-02
- Attribute sep/sep_char is not allowed to be undefined
- Increased test coverage: added errors 1008 and 1014
- Default for escape_null in csv () is now false
- New error code for illegal argument(s)/parameter(s) (RT#119827)
- Fix tests for perl without dot in @INC
- Fix crlf issue for csv () on Windows (RT#120466)
1.26 - 2016-11-29
- is_missing (0) on empty line returns 1 for keep_meta_info = true
1.25 - 2016-08-28
- Allow lc, uc, and coderef for csv () headers attribute
- Document for eof when the last line has an error (RT#115954)
- Allow csv () to call header () with all supported arguments
1.24 - 2016-07-09
- Set auto-wrap on for csv2xls with embedded newlines
- Add examples/csv2xlsx, the MSExcel-2007+ version of csv2xls
Includes new feature to merge multiple CSV's into a single xlsx
- Fix parse error in complex option combo (RT#115953)
1.23 - 2016-03-25
- Skip unsupported encodings
- Fix crash on error in parsing with bound columns (RT#113279)
- Add predefined filters (not_blank, not_empty, filled)
1.22 - 2016-02-23
1.21 - 2016-01-06
- Alias %_ to row in hashref mode for csv function attributes
on_in and before_out
- Fix \r\n ending with allow_loose_escapes (reported by Bas Bloemsaat)
1.20 - 2015-10-09
- Add known_attributes function/method
- Add contributor notes
- Allow undef as value for aliased attributes
1.19 - 2015-06-17
- Guard tests against $PERL_UNICODE
- Numeric options were sometimes interpreted as boolean
- Safer meta_info use
1.18 - 2015-05-22
- Add quote_empty attribute
- Add database NULL documentation
- Inherit csv attributes in csv () when called in void context
- micro-optimisation for combine/print (empty fields will be faster)
1.17 - 2015-04-24
- Enable overruling $csv in csv ()
- Allow encoding to be shortened to enc in csv ()
- Allow filter to alter content
- Add say (print with default eol => $\)
- Allow MS sep=; on first line (RT#100304)
1.16 - 2015-03-02
- filter made more useful (access to other fields)
1.15 - 2015-02-11
- Remove perl recommendation from META as it breaks cpan clients
1.14 - 2015-02-02
- Move to github
- Add csv (filter => {});
1.13 - 2015-01-03
- Fix quote_binary (#RT100676)
- Fix csv () for hashrefs with aliased headers
1.12 - 2014-11-01
- Add field number to error_diag
- Fixed non-IO parsing multi-byte EOL
- Fixed a possible missed multi-byte EOL
- Allow hashref for csv ()'s headers attribute
- Allow encoding on all output handles in csv ()
- Include doc changes as ticketed in the Text::CSV queue
- Fix parallel testing issue
- Allow csv as method call (not using the object)
- Rename quote_null to escape_null
- Give meaning to keep_meta_info on output (RT#99941)
1.11 - 2014-08-16
- Fixed eof (RT#97742)
- Check for attribute conflicts early
- csv (in => ..) now defaults to *STDOUT for out
- Support for multi-byte quote_char
- New attribute "key" for csv ()
Enjoy, Have FUN! H.Merijn