The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.
1.1.1 2016-10-08 Sébastien Millet <milletseb@laposte.net>

	* Fixes a bug where double-quote escape character was not detected,
	  leading to an error during CSV read.

	* Adds lock_keys to returned hash refs (for record values), so that one
	  cannot read a non existing field.
	  Don't lock keys if croak_if_error is set to 0.

	* All CSV input files under Windows are now using CRLF (issue with 5.12.2
	  that would not read correctly Unix line break inputs).

1.1.0 2016-10-03 Sébastien Millet <milletseb@laposte.net>

	* Removes an each instruction used to walk in an array (incompatible with
	  some earlier perl versions)

1.0.9 2016-10-02 Sébastien Millet <milletseb@laposte.net>

	* Minor updates utils/csvcopy.pl options: ',' replaces '||' as value
	  separator in some cases

	* Adds print_id() member function to Text::AutoCSV, to display all
	  characteristics of input

	* Adds out_header() member function, to set header of a field at write
	  time

	* Replace 'join' member function with 'links' member function, to avoid
	  name collissions

	* Fixes an issue with t/10-prepost.t that'd fail on some systems/perl
	  versions.

1.0.8 2016-10-01 Sébastien Millet <milletseb@laposte.net>

	* Add out_fields (alias: write_fields) attribute, allowing to define
	  fields written in output

	* Add search_ignore_accents (object attribute) and its counterpart search
	  option ignore_accents, true by default.

	* Now accept "no CSV separator" detection if input seems to contain one
	  unique column.

	* Remove accents from characters when working out field names, in all
	  encodings (uses s/\p{Nonspacing_Mark}//g on NFKD'ed strings to be as
	  general as possible)

	* Put function remove_accents in @EXPORT_OK

	* When a field is unknown and Text::AutoCSV croaks miserably, print out
	  the list of existing fields, to bring immediate help to caller.

	* utils/csvcopy.pl: Add --out_fields option
	                    Add --join (also -j) option

	* On UTF-8 inputs: no longer use systematic :via(File::BOM), instead, add
	  :via(File::BOM) only when BOM is detected. Detection (for UTF-8) is done
	  manually, using raw file access.
	  Reason: via(File::BOM) would produce warnings when first line of a UTF-8
	  encoded file (that has no BOM) would contain non-ascii characters.

1.0.7 2016-09-22 Sébastien Millet <milletseb@laposte.net>

	* lib/Text/AutoCSV.pm: ask for DateTime::Format::Strptime to be >= 1.63
	                       (credits: SREZIC@cpan.org)

	* lib/Text/AutoCSV.pm: no longer record each input record twice (once as
	                       an array, once as a hash) when keeping it in-memory.
	                       Instead, keep each record only as an array and
	                       convert it to a hash on-the-fly as needed.

	* Add option value_if_found in searches, and corresponding attribute
	  search_value_if_found. Updates test plan & POD accordingly.

1.0.6 2016-09-21 Sébastien Millet <milletseb@laposte.net>

	* t/10-prepost.t: fix test plan to avoid -(-1) producing '+1' (instead of
	                  '1') with old versions of perl.

1.0.5 2016-09-20 Sébastien Millet <milletseb@laposte.net>

	* t/10-prepost.t: stop using $+ hash for named regew captures!
	                  also workaround print out of date with different results
	                  depending on system ('avr.' versus 'avr' for April...)

	* t/03-enc.t: avoid fallback from UTF16 to other encoding that seem not
	              work on many OSes (not an issue as this feature is declared
	              experimental in the POD).

1.0.4 2016-09-19 Sébastien Millet <milletseb@laposte.net>

	* t/06-exdoc.t: stop using $+ hash for named regex captures (not
	                compatible with some old perl versions)

	* lib/Text/AutoCSV.pm: re-open the input to detect dates - apparently the
	                       seek instruction is not stable depending on OS and
	                       perl version.

1.0.3 2016-09-17 Sébastien Millet <milletseb@laposte.net>

	* t/06-exdoc.t: sets TZ to UTC to solve an issue with tz
	                (credits: SREZIC@cpan.org).
	                Also skips the test under Windows (TZ update is ignored
	                and tzset (POSIX module) is not implemented on strawberry.

	* t/10-prepost.t:
	  t/05-croak.t:   uses like() instead of intermediate variable that'd make
	                  test result not visible in fail report.

	* lib/Text/AutoCSV.pm: uses homemaid _get_def() instead of // constructs to
	                       preserve compatibility with old perls
	                       (credits: SREZIC@cpan.org).

	* lib/Text/AutoCSV.pm: fixes a bug where an unknown field would produce a
	                       useless (and not understandable) warning before
	                       displaying error message or sometimes silently
	                       continuing with uninitialized values

	* lib/Text/AutoCSV.pm: add join() method, that takes all fields of target
	                       and avoids chaining numerous field_add_link() when
	                       all fields of remote are wanted.

	* t/11-bugfix.t: adds tests to ensure bugfix non-regression

1.0.2 2016-09-16 Sébastien Millet <milletseb@laposte.net>

	* t/06-exdoc.t: don't use epoch() and from_epoch() of DateTime, use
	                Time::Local functions instead.
	                => add Time::Local to module Prereqs

	* lib/Text/AutoCSV.pm: fixes a bug in Windows that caused t/03-enc.t to
	                       fail.

	* t/10-prepost.t: updated printout of certain tests to have more details
	                  about failed tests.

1.0.1 2016-09-16 Sébastien Millet <milletseb@laposte.net>

	* Ticket 117845 on rt.cpan.org:

	  t/10-prepost.t:      skips tests that need DateTime::Format::Epoch::JD
	                       if not available.
	  lib/Text/AutoCSV.pm: improves and fixes in_map and out_map call chain
	                       arguments.
	  lib/Text/AutoCSV.pm: improves object status management in case of croak.
	                       before: a croak intercepted by an eval would result
	                       in a not-well-defined status - now, object resets
	                       itself and manages correctly files closes and
	                       one_pass attribute.
	  lib/Text/AutoCSV.pm: changes the way escape character is detected to
	                       avoid a bug sometimes seen on some smokers.

	* lib/Text/AutoCSV.pm: adds attribute dates_formats_to_try_supp, to add
	                       (instead of replacing) formats to the default list.

	* lib/Text/AutoCSV.pm: adds format '%Y%m%d%H%M%S' to default datetime
	                       format list.

	* utils/csvcopy.pl:    add options --dates and --dates_formats_supp.

1.0 2016-09-14 Sébastien Millet <milletseb@laposte.net>

	* Initial build with Dist::Zilla

	* Initial release