Changes for version 0.055002 - 2022-02-14
- Bug fixes
- benchmarks/grep_vs_search.pl Fix duplicate '-i' option in `grep_vs_search.pl`.
- t/* Work around GNU readline interaction with xterm. Tests can fail if GNU readline is told to use STDIN/STDOUT: it may inadvertently output a `ESC-[?1034h` sequence ("interpret Meta key, enable 8-bit input"), which does not play well with our `Test::Output` tests.
- To avoid this, we specify `filehandles => []` to the `Term::CLI` constructor.
- So far this only manifested itself on OpenBSD 7.0, and only on the i386 build of that. Still, I want my tests to pass...
- Building / Testing
- Leave POD test prereqs out of the distribution.
- Improve test coverage (also add tests for `Term::CLI::Util`).
- Fix enviroment testing for skipping tests. The `Test::Class` `SKIP_ALL` method does not work as advertised.
- Enhancements
- Term::CLI::Util Make find_* routines a little faster. The `last if ...` check when iterating over possible matches is not necessary. A simple unqualified `last` will do.
- Term::CLI::Argument::Filename
- Promote `_glob_complete` to `glob_complete`.
Documentation
introduction to Term::CLI class/module structure
tips, tricks, and examples for Term::CLI
Modules
CLI interpreter based on Term::ReadLine
generic parent class for arguments in Term::CLI
class for "boolean" arguments in Term::CLI
class for "enum" string arguments in Term::CLI
class for file name arguments in Term::CLI
base class for numerical arguments in Term::CLI
class for floating point arguments in Term::CLI
class for integer arguments in Term::CLI
class for basic string arguments in Term::CLI
generic base class for Term::CLI classes
Class for (sub-)commands in Term::CLI
A generic 'help' command for Term::CLI
generic parent class for elements in Term::CLI
localizations for Term::CLI
English localizations for Term::CLI
Dutch localizations for Term::CLI
Term::ReadLine compatibility layer for Term::CLI
Manage command arguments in Term::CLI
Role for (sub-)commands in Term::CLI
Role for generating help text in Term::CLI
Keep a "state" hash in Term::CLI objects
utility functions for Term::CLI(3p)
Examples
- examples/big_enum.pl
- examples/cli_context.pl
- examples/context_sensitive_completion/README.md
- examples/context_sensitive_completion/cli_demo.pl
- examples/context_sensitive_completion/data/README.md
- examples/context_sensitive_completion/data/continents.json
- examples/context_sensitive_completion/data/countries.json
- examples/context_sensitive_completion/data/data.json
- examples/context_sensitive_completion/data/munge_country_data.pl
- examples/dynamic_commands.pl
- examples/getopt_test.pl
- examples/readline_cli.pl
- examples/readline_completion_demo.pl
- examples/simple_cli.pl
- examples/state_demo.pl
- examples/term_cli.pl
- examples/term_cli_demo.pl
- examples/wordlist-en.txt
Other files
- CONTRIBUTING.md
- Changes
- INSTALL
- LICENSE
- MANIFEST
- META.json
- META.yml
- Makefile.PL
- README.md
- cpanfile
- tutorial/example_01_basic_repl.pl
- tutorial/example_02_ignore_blank.pl
- tutorial/example_03_setting_prompt.pl
- tutorial/example_04_exit_command.pl
- tutorial/example_05_add_help.pl
- tutorial/example_06_add_help_text.pl
- tutorial/example_07_echo_command.pl
- tutorial/example_08_make_command.pl
- tutorial/example_09_ls_command.pl
- tutorial/example_10_cp_command.pl
- tutorial/example_11_sleep_command.pl
- tutorial/example_12_show_command.pl
- tutorial/example_13_set_command.pl
- tutorial/example_14_sub_cmd_and_args.pl
- tutorial/example_15_debug_command.pl
- tutorial/example_16_options.pl
- tutorial/example_17_suspend.pl
- tutorial/example_18_dynamic_enum.pl