Cloup

Master branch

Tests status Coverage Status Documentation Status (master branch)

Latest release

Latest release on PyPI Supported versions Documentation Status (latest release)

Cloup (= Click + groups) contains a set of Click extensions that enable you to:

  • define option groups with a clean API;

  • define constraints, including conditional constraints, on any group of parameters (e.g. mutually_exclusive, RequireAtLeast(1) etc.);

  • (optionally) show an auto-generated description of defined constraints in the command help;

  • organize the subcommands of a MultiCommand in multiple help sections.

These features are implemented in three mixins following the same pattern of click-contrib extensions. For ease of use, Cloup also provides:

  • its own versions of Click commands, obtained by mixing Click classes with the mixins mentioned above;

  • its own versions of Click decorators, for creating such commands.