The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Changes for version 0.051 - 2020-06-28

  • GH-81 - Reintroduce `--flatten`
  • GH-80 - Allow opts in ->cli_encode_as([$fmt,\%opts], @records)
  • GH-79 - change Data::Dumper options for --output=dump
  • GH-78 - make --output=ndjson as default format
  • GH-77 - cli_read_file - pass %opts to each format readers
  • GH-75 - Change NamedCodeAttributes to Exporter
  • GH-74 - Prepare MOP4Import::Util::Inspector to implement zsh completer
  • GH-73 - Rename run() to cli_run(). (run() was too generic as an API entry name.)
  • GH-72 - Fix tsv output and add cli_encode_as($outputFmt, @records)
  • GH-57 - separate cli_array (returns `\@args`) and cli_list (returns `@args`)

Documentation

A brief introduction to Runnable-Module design pattern
or Modern use of fields.pm and %FIELDS.

Modules

Boilerplate base class for Runnable Module
OO-Modulino with NDJSON args/outputs
Base class with configure() interface for fields
map import args to < $meta-declare_...() >> pragma methods.
inner-type related pragmas
Object to encapsulate caller() record
define Env class for PSGI, with extensions.
pragma dispatcher for name => [@pragma]... style protocol
fields-aware type builder for inner-type

Provides

in Base/CLI_Opts.pm
in FieldSpec.pm
in NamedCodeAttributes.pm
in Types/Extend.pm
in Util.pm
in Util/CallTester.pm
in Util/CommentedJson.pm
in Util/FindMethods.pm
in Util/Inspector.pm
in Util/JSON_TYPE.pm
in Util/ResolveSymlinks.pm
in Util/compat_double_diamond.pm
in Util/compat_double_diamond_5_20.pm