The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
0.039   2022-07-27  Released-By: PERLANCAR; Urgency: low

        - No functional changes.

        - [doc] Mention more CSV-related modules.


0.038   2022-07-25  Released-By: PERLANCAR; Urgency: medium

        - Add utility: csv-munge-row.


0.037   2022-03-27  Released-By: PERLANCAR; Urgency: medium

        - Set input and output encoding to UTF8 and note this in the
          scripts' documentation (RT#141357).


0.036   2022-02-10  Released-By: PERLANCAR; Urgency: medium

        - [cli csv-freqtable] [bugfix] Extraneous first row was produced.


0.035   2022-02-10  Released-By: PERLANCAR; Urgency: medium

        - Add utility: csv-freqtable.


0.034   2021-07-10  Released-By: PERLANCAR; Urgency: medium

	- [bugfix][doc] Cookbook package was not renamed.


0.033   2021-07-10  Released-By: PERLANCAR; Urgency: medium

	- Add logging.

        - [build] Rebuild with newer Perinci::CmdLine::POD 0.023 to generate
          POD-formatted usage line.


0.032   2020-08-16  Released-By: PERLANCAR; Urgency: medium

	- Add utility: csv-transpose.

	- Add cookbook (mostly only placeholders for now).


0.031   2020-08-03  Released-By: PERLANCAR; Urgency: medium

	- Add CLI: csv-csv (csv2csv).

	- Add CSV output options --output-{sep,quote,escape}-char for CLIs
	  that output CSV, e.g. csv-sort, csv-grep, csv-sum, csv-split,
	  csv-csv, etc.

        [cli csv-info]

        - [ux] Now defaults to producing naked result (RT#133078).


0.030   2020-07-30  Released-By: PERLANCAR; Urgency: medium

	- Add common options: --sep-char, --quote-char, --escape-char
	  (RT#133079).

	[cli csv-info]

        - [bugfix] Avoid dying on invalid CSV by initializing $fields to []
	  (RT#133077).

	[cli csv-setop]

        - [bugfix][doc] Fix the documentation of --compare-fields (RT#133076).


0.029   2020-05-29  Released-By: PERLANCAR; Urgency: medium

	- Add utility: csv2td.


0.028   2019-12-27  Released-By: PERLANCAR; Urgency: medium

	[cli csv-sort-rows]

        - Add options --key (-k), --by-sortsub.


0.027   2019-12-23  Released-By: PERLANCAR; Urgency: medium

	- Tweak tab completion.


0.026   2019-12-19  Released-By: PERLANCAR; Urgency: medium

	- Add ability to read CSV from stdin.

	- [bugfix] csv-sort-rows, csv-sort-fields: didn't observe common
	  options --tsv and --no-header.


0.025   2019-11-29  Released-By: PERLANCAR; Urgency: medium

	- Update coerce rule names in Sah schemas (Data::Sah::Coerce
	  0.034+).


0.024   2019-11-14  Released-By: PERLANCAR; Urgency: medium

	- Add utility: csv-split.


0.023   2019-06-06  Released-By: PERLANCAR

	- Add utiity: csv-info.

	- [doc] Explain --no-header more.


0.022   2019-05-21  Released-By: PERLANCAR

	- Add csv2ltsv script (ltsv2csv not yet).

	- [doc] Mention App::TSVUtils and App::LTSVUtils; update that
	  csv2tsv, tsv2csv are now included by us.


0.021   2019-05-12  Released-By: PERLANCAR

	- Add scripts: csv2tsv, tsv2csv.


0.020   2019-04-29  Released-By: PERLANCAR

        - Add utilities: csv-setop, csv-sort-rows (with alias csv-sort),
          csv-lookup-fields.

        - Make $main::csv available to Perl code.

        - [bugfix] A couple of fixes.


0.019   2019-04-23  Released-By: PERLANCAR

	- Declare argument specification variables with 'our' instead of
	  'my' so they are accessible from outside.


0.018   2019-04-23  Released-By: PERLANCAR

	- Add option --tsv to parse input file as TSV instead of CSV.


0.017   2019-04-23  Released-By: PERLANCAR

	- csvutil(): forgot to update valid actions in schema.


0.016   2019-04-23  Released-By: PERLANCAR

	- Add utility: csv-dump (and its alias dump-csv).


0.015   2019-04-15  Released-By: PERLANCAR

	- Add utility: csv-each-row.

	- Make $main::field_idxs also available for Perl code.

	- [ux] CLIs do not need to read env or config.

	- Allow 'eval' argument to be coderef, for when csvutil() is called
	  from Perl.


0.014   2018-05-25  Released-By: PERLANCAR

	- Add utility: csv-map.

	- [ux] (for csv-grep, csv-map): Compile --eval code in 'main' package,
	  turn off strict & warnings.

	- csv-grep & csv-map: also set $main::row and $main::rownum like in
	  other utilities.

	- [test] Add test for csv-grep (& csv-map).


0.013   2017-07-02  Released-By: PERLANCAR

        - Add utility: csv-grep.

        - Add common option: --(no-)header to be able to handle CSV that does
          not have header row.


0.012   2017-04-25  Released-By: PERLANCAR

	- csv-select-fields: Add --field-pat to select by regular
	  expression.


0.011   2016-11-17  Released-By: PERLANCAR

	- [Bugfix] csv-select-fields CLI was not generated in previous
	  release.


0.010   2016-11-16  Released-By: PERLANCAR

	- Add utility: csv-select-fields.

	- csv-delete-field: allow deleting multiple fields in one go.


0.009   2016-11-16  Released-By: PERLANCAR

	- Add utility: csv-concat.

	- csv-add-field: add option --after, --before, --at to specify
	  position of the new field.


0.008   2016-11-16  Released-By: PERLANCAR

        - Add utilities: csv-select-row, csv-convert-to-hash.


0.007   2016-11-15  Released-By: PERLANCAR

	- Add utilities: csv-sum, csv-avg.

	- csv-add-field: Tweak completion: field should not be completed
	  with existing field names.


0.006   2016-11-03  Released-By: PERLANCAR

        - [ux] Add completion for field name (-F) and --example.


0.005   2016-11-03  Released-By: PERLANCAR

        - csv-add-field, csv-munge-field: Don't run code for header row.

        - Tweak descriptions.


0.004   2016-11-03  Released-By: PERLANCAR

        - [Removed] Remove utility csvutil.

        - Add utility csv-sort-fields.


0.003   2016-11-02  Released-By: PERLANCAR

        - [Incompatible change] Rename script replace-newline-in-csv to
          csv-replace-newline for consistency with the other utilities.

        - Add tests.


0.002   2016-11-02  Released-By: PERLANCAR

	- Add utilities: csvutil, csv-list-field-names, csv-add-field,
	  csv-delete-field, csv-munge-field.


0.001   2016-11-01  Released-By: PERLANCAR

         - First release.