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