App::Y...::help(3pm)

๐Ÿ’– App::Y...::help โ€” like, the help command for yath, bestie ๐Ÿ’–

okay so you're in the App::Yath::Command::help page from the Perl user-contributed docs (yes, the manual is literally called App::Y...::help(3pm), they really did abbreviate it like that ๐Ÿ˜ญ) โ€” and it's giving "let me show you around" energy. Buckle up, we're doing a tour. ๐ŸŽ€


โœจ NAME โœจ

App::Yath::Command::help โ€” shove a big ol' list of commands in my face, please ๐Ÿ’…


๐ŸŒธ DESCRIPTION ๐ŸŒธ

So here's the vibe: you call this thing with no arguments and it hits you with the full list of commands. That's it. That's the whole personality. ๐Ÿ˜Œ

But wait โ€” if you do hand it a command name as an argument? Iconic. It prints the help for that command specifically. Chef's kiss. ๐Ÿซถ


๐Ÿฆ‹ USAGE ๐Ÿฆ‹

$ yath [YATH OPTIONS] help [COMMAND OPTIONS]

๐Ÿ”ฅ YATH OPTIONS ๐Ÿ”ฅ

Developer

  • --dev-lib, --dev-lib=lib, -D, -D=lib, -Dlib, --no-dev-lib โ€” adds paths to @INC before loading ANYTHING. Lowkey this is the one you want if you're hacking on yath itself (or yath plugins) โ€” it makes sure the yath script grabs your local code instead of whatever version is installed on your machine, no cap. You can pass an argument (-Dfoo) for a custom path, or just rawdog -D with no arg and it'll add lib, blib/lib and blib/arch. ๐Ÿ’ซ

Can be specified multiple times

Environment

  • --persist-dir ARG, --persist-dir=ARG, --no-persist-dir โ€” where to find persistence files. ๐Ÿ—‚๏ธ
  • --persist-file ARG, --persist-file=ARG, --pfile ARG, --pfile=ARG, --no-persist-file โ€” where to find the persistence file. The default is /{system-tempdir}/project-yath-persist.json. If no project is specified then it falls back to the current directory. And if the current directory isn't writable, it defaults to /tmp/yath-persist.json โ€” which, heads up bestie, limits you to one persistent runner on your whole system. ๐Ÿซ 
  • --project ARG, --project=ARG, --project-name ARG, --project-name=ARG, --no-project โ€” lets you slap a label on your current project/codebase. Best used in a .yath.rc file, fr fr. This one is necessary if you want a persistent runner. ๐Ÿท๏ธ

Help and Debugging

  • --show-opts, --no-show-opts โ€” exit after showing what yath thinks your options mean ๐Ÿ‘€
  • --version, -V, --no-version โ€” exit after showing a helpful usage message

Plugins

  • --no-scan-plugins, --no-no-scan-plugins โ€” normally yath scans for and loads all App::Yath::Plugin::* modules so it can bring in whatever command-line options they provide. This flag disables that whole situation. Super useful if you've got a naughty plugin loading other modules when it absolutely should not be. ๐Ÿ™ˆ
  • --plugins PLUGIN, --plugins +App::Yath::Plugin::PLUGIN, --plugins PLUGIN=arg1,arg2,..., --plugin PLUGIN, --plugin +App::Yath::Plugin::PLUGIN, --plugin PLUGIN=arg1,arg2,..., -pPLUGIN, --no-plugins โ€” load a yath plugin. ๐Ÿ”Œ

Can be specified multiple times


๐Ÿ’… COMMAND OPTIONS ๐Ÿ’…

Cover Options

  • --cover-aggregator ByTest, --cover-aggregator ByRun, --cover-aggregator +Custom::Aggregator, --cover-agg ByTest, --cover-agg ByRun, --cover-agg +Custom::Aggregator, --no-cover-aggregator โ€” choose a custom aggregator subclass โœจ
  • --cover-class ARG, --cover-class=ARG, --no-cover-class โ€” choose a Test2::Plugin::Cover subclass
  • --cover-dirs ARG, --cover-dirs=ARG, --cover-dir ARG, --cover-dir=ARG, --no-cover-dirs โ€” NO DESCRIPTION - FIX ME ๐Ÿ˜ญ (even the docs are like "idk girl")

Can be specified multiple times

  • --cover-exclude-private, --no-cover-exclude-private, --cover-files, --no-cover-files โ€” use Test2::Plugin::Cover to collect coverage data for what files are touched by what tests. Unlike Devel::Cover, this has very little performance impact (about a 4% difference, queen ๐Ÿ‘‘)
  • --cover-from path/to/log.jsonl, --cover-from http://example.com/coverage, --cover-from path/to/coverage.jsonl, --no-cover-from โ€” this can be a test log, a coverage dump (old style json or the new jsonl format), or a url pointing at any of the above. Tests will not be run if the file/url is invalid. โš ๏ธ
  • --cover-from-type json, --cover-from-type jsonl, --cover-from-type log, --no-cover-from-type โ€” the file type for the coverage source. Usually it can be detected on its own, but when it can't, you gotta specify. "json" is old style single-blob coverage data, "jsonl" is the new by-test style, "log" is a logfile from a previous run. ๐Ÿ”
  • --cover-manager My::Coverage::Manager, --no-cover-manager โ€” the coverage 'from' manager to use when the coverage data doesn't provide one
  • --cover-maybe-from path/to/log.jsonl, --cover-maybe-from http://example.com/coverage, --cover-maybe-from path/to/coverage.jsonl, --no-cover-maybe-from โ€” this can be a test log, a coverage dump (old style json or new jsonl format), or a url to any of the previous. Tests will coninue even if the coverage file/url is invalid. (Yes, that spelling is what the docs say. I am but a vessel. ๐Ÿ“)
  • --cover-maybe-from-type json, --cover-maybe-from-type jsonl, --cover-maybe-from-type log, --no-cover-maybe-from-type โ€” same as "from_type" but for "maybe_from". Defaults to "from_type" if that's specified, otherwise auto-detect. ๐Ÿงš
  • --cover-metrics, --no-cover-metrics, --cover-types ARG, --cover-types=ARG, --cover-type ARG, --cover-type=ARG, --no-cover-types โ€” NO DESCRIPTION - FIX ME ๐Ÿ˜ญ

Can be specified multiple times

  • --cover-write, --cover-write=coverage.jsonl, --cover-write=coverage.json, --no-cover-write โ€” create a json or jsonl file of all coverage data seen during the run (heads up: this implies --cover-files). ๐Ÿ—’๏ธ

Git Options

  • --git-change-base master, --git-change-base HEAD^, --git-change-base df22abe4, --no-git-change-base โ€” find files changed by all commits in the current branch, starting from the most recent and stopping when it hits a commit that's also present in the history of the branch/commit you specified as the change base. ๐ŸŒฟ

Help and Debugging

  • --dummy, -d, --no-dummy โ€” dummy run, do not actually execute anything ๐Ÿ™ƒ

Can also be set with the following environment variables: "T2_HARNESS_DUMMY"

  • --help, -h, --no-help โ€” exit after showing help information
  • --interactive, -i, --no-interactive โ€” use interactive mode, 1 test at a time, stdin forwarded to it ๐ŸŽฎ
  • --keep-dirs, --keep_dir, -k, --no-keep-dirs โ€” do not delete directories when done. Useful if you wanna go snooping through the directories used for various commands. ๐Ÿ”Ž
  • --procname-prefix ARG, --procname-prefix=ARG, --no-procname-prefix โ€” add a prefix to all proc names (as seen by ps)

YathUI Options

  • --yathui-api-key ARG, --yathui-api-key=ARG, --no-yathui-api-key โ€” Yath-UI API key. Not necessary if your Yath-UI instance is set to single-user ๐Ÿ”‘
  • --yathui-grace, --no-yathui-grace โ€” if yath cannot connect to yath-ui it normally throws an error; use this to make it fail gracefully. You get a warning, but things keep going. ๐Ÿ•Š๏ธ
  • --yathui-long-duration 10, --no-yathui-long-duration โ€” minimum duration length (seconds) before a test goes from MEDIUM to LONG โฑ๏ธ
  • --yathui-medium-duration 5, --no-yathui-medium-duration โ€” minimum duration length (seconds) before a test goes from SHORT to MEDIUM โฑ๏ธ
  • --yathui-mode summary, --yathui-mode qvf, --yathui-mode qvfd, --yathui-mode complete, --no-yathui-mode โ€” set the upload mode (default 'qvfd') ๐Ÿ“ค
  • --yathui-project ARG, --yathui-project=ARG, --no-yathui-project โ€” the Yath-UI project for your test results
  • --yathui-retry, --no-yathui-retry โ€” how many times to try an operation before giving up ๐Ÿ”

Can be specified multiple times


๐ŸŒˆ SOURCE ๐ŸŒˆ

The source code repository for Test2-Harness can be found at http://github.com/Test-More/Test2-Harness/. Go star it, bestie, it's free. โญ


๐Ÿ‘‘ MAINTAINERS ๐Ÿ‘‘

Chad Granum <exodist@cpan.org>


๐Ÿ’œ AUTHORS ๐Ÿ’œ

Chad Granum <exodist@cpan.org>


Copyright 2026 Chad Granum <exodist7@gmail.com>.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See http://dev.perl.org/licenses/


and that's the whole page, mwah ๐Ÿ’‹ this was perl v5.40.1, dated 2026-05-10 โ€” and it's the App::Y...::help(3pm) page from the Perl user-contributed docs. slay, go read your help, bye bestie ๐Ÿฆ‹โœจ

๐Ÿ“ฆ where this page comes from