The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
0.46    2017-01-12 (PERLANCAR)

	- [dist] Forgot to include to prereqs modules that are used for
	  embedding.


0.45    2017-01-12 (PERLANCAR)

	- Support reading configuration file.

        - Support reading environment variable for default options.


0.44    2017-01-11 (PERLANCAR)

	- Generate COMPLETION POD section.

	- Tweak: put POD after subroutine declarations.


0.43    2017-01-10 (PERLANCAR)

	- Generate POD using Perinci::CmdLine::POD.


0.42    2017-01-09 (PERLANCAR)

	- Generate #PERICMD_INLINE_SCRIPT_METAS that dumps the Rinci
	  metadata to be read e.g. by Perinci::CmdLine::Dump.


0.41    2017-01-06 (PERLANCAR)

        - Support subcommands.

        - Add option 'pack_deps' to make it possible to not datapack
          dependencies.

        - Check that args_as property in metadata is hash/hashref.


0.40    2016-12-28 (PERLANCAR)

	- No functional changes.

        - [dist] Fix expressing follow-spec prereq relationship with x_spec.


0.39    2016-12-27 (PERLANCAR)

	- [dist] Move spec prereq from DevelopRecommends to
	  DevelopSuggests with _SPEC:: prefix.

	- fmt: use Markdown autolink with pm:/prog: URLs in description so
	  it can be converted to POD's L<...>.

	- Tweak metadata: replace x.schema.entity with schema.


0.38    2016-06-02 (PERLANCAR)

        [ENHANCEMENTS]

        - Add argument validation.

        - Add option: allow_prereq.

        - [Optimization] Don't include unneeded modules and subroutines to make
          resulting script smaller (e.g. no need to include Text::Table::Tiny
          and Perinci::Result::Format::Lite if we don't do formatting, no need
          for _pci_gen_iter() when we don't accept streaming input or lines from
          stdin/file, etc).

        - [Optimization] Delay loading _pci_check_args, so --help and --version
          can be a bit faster.

        [BUG FIXES]

        - Data cleansing was stil using (unincluded) Data::Clean::JSON instead
          of our own generated cleanser.


0.37    2016-03-16 (PERLANCAR)

	- No functional changes.

	- Replace JSON with JSON::MaybeXS.


0.36    2016-02-26 (PERLANCAR)

	- Implement cmdline_src=stdin_or_args (untested).


0.35    2016-02-04 (PERLANCAR)

        - [Bugfix] When streaming input (argument) has schema=array, use its
          'of' clause subschema.

        - Update to Test::Perinci::CmdLine 1.38.


0.34    2016-01-21 (PERLANCAR)

	- Update to Test::Perinci::CmdLine 1.33.

	- [Bugfix] Don't render module version during script generation,
	  let the generated script resolve VERSION and DATE.


0.33    2016-01-15 (PERLANCAR)

	- Replace Data::Dumper with Data::Dmp to avoid failure of running
	  the generated code dump on older perls [CT].


0.32    2016-01-14 (PERLANCAR)

	- Add option: use_utf8.

	- Bump prereq version Log::Any::IfLOG to 0.07.


0.31    2015-11-28 (PERLANCAR)

	- [Bugfix] Handle function which returns naked result.


0.30    2015-11-27 (PERLANCAR)

	- Add support for streaming input (most of cmdline_src support are now
          implemented too, except for: cmdline_src=stdin_line, the
          -cmdline_src_XXX special arguments, and probably some minor quirks).


0.29    2015-11-27 (PERLANCAR)

	- Add support for streaming output (streaming input not yet).


0.28    2015-10-03 (PERLANCAR)

	- No functional changes.

	- Update mentioned module App::fatten (has been renamed to
	  App::depak).


0.27    2015-09-30 (PERLANCAR)

	- Switch from JSON::Tiny to JSON::Tiny::Subclassable because the
	  latter's interface is more conveniently similar to JSON::{PP,XS}.


0.26    2015-09-30 (PERLANCAR)

        - [Bugfix] Embed a JSON encoder/decoder module (we choose JSON::Tiny)
          because JSON::PP is not yet core in perl < 5.14 [CT].


0.25    2015-09-29 (PERLANCAR)

        - Observe result metadata attributes: cmdline.default_format,
          cmdline.result, cmdline.exit_code.

        - Support per_arg_json.

        - Refactor (use Perinci::Result::Format::Lite instead of doing our own
          thing, this reduces code duplication).

        - Adjust to Test::Perinci::CmdLine 1.26.


0.24    2015-09-28 (PERLANCAR)

	- No functional changes.

	- Adjust to Test::Perinci::CmdLine 1.24.


0.23    2015-09-23 (PERLANCAR)

	- [ux] Add short option -I for --include.

	- Quote hash keys to avoid syntax error when arg is e.g. 'foo.bar'.


0.22    2015-09-23 (PERLANCAR)

	- Disallow extraneous arguments, like in pericmd-lite &
	  pericmd-classic.


0.21    2015-09-12 (PERLANCAR)

	- [Incompatible change] Rename program_* arguments to script_* to
	  be more consistent with App::GenPericmdScript, rename 'summary'
	  argument to 'script_summary'.


0.20    2015-09-10 (PERLANCAR)

	- Add option: code_after_end.


0.19    2015-08-01 (PERLANCAR)

	- No functional changes.

	- Bump prereq version Module::DataPack 0.09.


0.18    2015-07-31 (PERLANCAR)

	- No functional changes.

	- Force minimum version of Test::Perinci::CmdLine [CT].


0.17    2015-07-30 (PERLANCAR)

	- Dump arguments after #PERICMD_INLINE_SCRIPT directive with JSON
	  instead of Data::Dmp so it's safer to parse.


0.16    2015-07-30 (PERLANCAR)

	- Generate #ABSTRACT.


0.15    2015-07-08 (PERLANCAR)

	- Add option: skip_format, like in
	  Perinci::CmdLine::{Lite,Classic}.


0.14    2015-07-06 (PERLANCAR)

	- Interpret function metadata attribute cmdline.skip_format: on
	  true, skip adding common options --format, --json, --naked-res as
	  well.


0.13    2015-07-02 (PERLANCAR)

	- [fmt] Some formatting tweaks in the generated script (avoid
          unnecessary marker, avoid dumping long argument values in the
          #PERICMD_INLINE_SCRIPT comment).

        - Add #PODNAME in generated script for dzil.


0.12    2015-07-02 (PERLANCAR)

	- Add option: code_after_shebang.


0.11    2015-07-02 (PERLANCAR)

        - Add options: extra_urls_for_version & log (currently ignored).

        - Add option: code_before_parse_cmdline_options.

        - Add #DATE & #VERSION in the generated script for when the script is
          generated during Dist::Zilla build (see
          Dist::Zilla::Plugin::GenPericmdScript & App:GenPericmdScript).

        - Add option: program_version (for when the script is generated during
          Dist::Zilla build and the script backend module being loaded is the
          unbuilt version which might not have $VERSION yet). Used by
          DZP:GenPericmdScript.

        - Some fixes.


0.10    2015-06-19 (PERLANCAR)

        - Switch from using Getopt::Long::Less to Getopt::Long::EvenLess
          because... well, just because :-)


0.09    2015-06-18 (PERLANCAR)

	- [dzil] Fix misplaced prereqs, all the modules required to embed
	  into generated CLI script are our RuntimeRequires, not
	  DevelopRequires.

	- Add option: include to include extra modules.


0.08    2015-06-16 (PERLANCAR)

	- Replace Getopt::Long with Getopt::Long::Less (embedded) for
	  slightly lower startup overhead.


0.07    2015-06-16 (PERLANCAR)

	- No functional changes.

	- Tweak benchmark script: show result for running with perl -c.


0.06    2015-06-16 (PERLANCAR)

	- No functional changes.

	- Add & show startup overhead benchmark vs Perinci::CmdLine::Lite.


0.05    2015-06-16 (PERLANCAR)

        - Tweak generated --version message (prints Perinci::CmdLine::Inline
          version too, fix typo).

        - Some other fixes to avoid perl warnings/errors.


0.04    2015-06-12 (PERLANCAR)

	- Replace Module::FatPack with Module::DataPack.


0.03     2015-06-11 (PERLANCAR)

         - Use Test::Perinci::CmdLine test suite.

         - Reduce startup overhead by using Module::FatPack and moving most
           subroutines to fatpacked modules. 'script --help' or 'script
           --version' now only spends 0.020-0.025s on my PC, and 0.022s of that
           is loading/compiling Getopt::Long. So Getopt::Long is now the main
           overhead and I'll perhaps be looking for a way to reduce this
           further.

         - Support pass_cmdline_object.

         - Add the other Perinci::CmdLine::Base attributes as arguments,
           although currently they do nothing, for compatibility with the other
           Perinci::CmdLine backends.


0.02     2015-05-25 (PERLANCAR)

         - No functional changes.

         - Reupload, avoid PAUSE indexer for embedded packages
           (Text::Table::Tiny, Data::Check::Structure).


0.01     2015-05-25 (PERLANCAR)

         - First release.