close

./devel/py-click, Simple wrapper around optparse for powerful command line utilities

[ Image CVSweb ] [ Image Homepage ] [ Image RSS ] [ Image Required by ] [ Image Add to tracker ]


Branch: CURRENT, Version: 8.3.2, Package name: py313-click-8.3.2, Maintainer: pkgsrc-users

Click is a Python package for creating beautiful command line
interfaces in a composable way with as little code as necessary.
It's the "Command Line Interface Creation Kit". It's highly
configurable but comes with sensible defaults out of the box.

It aims to make the process of writing command line tools quick
and fun while also preventing any frustration caused by the inability
to implement an intended CLI API.


Required to run:
[devel/py-setuptools] [lang/python37]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 295.758 KB

Version history: (Expand)


CVS history: (Expand)


   2026-04-05 13:33:48 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-click: update to 8.3.2.

Version 8.3.2
--------------

Released 2026-04-02

-   Fix handling of ``flag_value`` when ``is_flag=False`` to allow such options to be
    used without an explicit value. :issue:`3084` :pr:`3152`
-   Hide ``Sentinel.UNSET`` values as ``None`` when using ``lookup_default()``.
    :issue:`3136` :pr:`3199` :pr:`3202` :pr:`3209` :pr:`3212` :pr:`3224`
-   Prevent ``_NamedTextIOWrapper`` from closing streams owned by ``StreamMixer``.
    :issue:`824` :issue:`2991` :issue:`2993` :issue:`3110` :pr:`3139` :pr:`3140`
-   Add comprehensive tests for ``CliRunner`` stream lifecycle, covering
    logging interaction, multi-threaded safety, and sequential invocation
    isolation. Add high-iteration stress tests behind a ``stress`` marker
    with a dedicated CI job. :pr:`3139`
-   Fix callable ``flag_value`` being instantiated when used as a default via
    ``default=True``. :issue:`3121` :pr:`3201` :pr:`3213` :pr:`3225`
   2025-11-16 08:58:04 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-click: updated to 8.3.1

Version 8.3.1

-   Don't discard pager arguments by correctly using ``subprocess.Popen``. \ 
:issue:`3039`
    :pr:`3055`
-   Replace ``Sentinel.UNSET`` default values by ``None`` as they're passed through
    the ``Context.invoke()`` method. :issue:`3066` :issue:`3065` :pr:`3068`
-   Fix conversion of ``Sentinel.UNSET`` happening too early, which caused incorrect
    behavior for multiple parameters using the same name. :issue:`3071` :pr:`3079`
-   Hide ``Sentinel.UNSET`` values as ``None`` when looking up for other parameters
    through the context inside parameter callbacks. :issue:`3136` :pr:`3137`
-   Fix rendering when ``prompt`` and ``confirm`` parameter ``prompt_suffix`` is
    empty. :issue:`3019` :pr:`3021`
-   When ``Sentinel.UNSET`` is found during parsing, it will skip calls to
    ``type_cast_value``. :issue:`3069` :pr:`3090`
   2025-10-09 10:02:00 by Thomas Klausner | Files touched by this commit (35)
Log message:
*: remove more references to (removed) Python 3.9
   2025-09-21 17:34:54 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
py-click: update to 8.3.0.

Version 8.3.0
--------------

Released 2025-09-15

-   **Improved flag option handling**: Reworked the relationship between \ 
``flag_value``
    and ``default`` parameters for better consistency:

    * The ``default`` parameter value is now preserved as-is and passed directly
      to CLI functions (no more unexpected transformations)
    * Exception: flag options with ``default=True`` maintain backward compatibility
      by defaulting to their ``flag_value``
    * The ``default`` parameter can now be any type (``bool``, ``None``, etc.)
    * Fixes inconsistencies reported in: :issue:`1992` :issue:`2514` :issue:`2610`
      :issue:`3024` :pr:`3030`
-   Allow ``default`` to be set on ``Argument`` for ``nargs = -1``. :issue:`2164`
    :pr:`3030`
-   Show correct auto complete value for ``nargs`` option in combination with flag
    option :issue:`2813`
-   Show correct auto complete value for nargs option in combination with flag \ 
option :issue:`2813`
-   Fix handling of quoted and escaped parameters in Fish autocompletion. \ 
:issue:`2995` :pr:`3013`
-   Lazily import ``shutil``. :pr:`3023`
-   Properly forward exception information to resources registered with
    ``click.core.Context.with_resource()``. :issue:`2447` :pr:`3058`
-   Fix regression related to EOF handling in CliRunner. :issue:`2939`:pr:`2940`
   2025-08-02 11:33:58 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-click: updated to 8.2.2

Version 8.2.2

- Fix reconciliation of `default`, `flag_value` and `type` parameters for
  flag options, as well as parsing and normalization of environment variables.
  :issue:`2952` :pr:`2956`
- Fix typing issue in ``BadParameter`` and ``MissingParameter`` exceptions for the
  parameter ``param_hint`` that did not allow for a sequence of string where the
  underlying functino ``_join_param_hints`` allows for it. :issue:`2777` :pr:`2990`
- Use the value of ``Enum`` choices to render their default value in help
  screen. Refs :issue:`2911` :pr:`3004`
- Fix completion for the Z shell (``zsh``) for completion items containing
  colons. :issue:`2703` :pr:`2846`
- Don't include envvar in error hint when not configured. :issue:`2971` :pr:`2972`
- Fix a rare race in ``click.testing.StreamMixer``'s finalization that manifested
  as a ``ValueError`` on close in a multi-threaded test session.
  :issue:`2993` :pr:`2991`
   2025-05-21 07:37:32 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-click: updated to 8.2.1

Version 8.2.1

- Fix flag value handling for flag options with a provided type.
- Fix shell completion for nested groups.
- Flush ``sys.stderr`` at the end of ``CliRunner.invoke``.
- Fix EOF handling for stdin input in CliRunner.
   2025-05-11 12:42:21 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-click: update to 8.2.0.

Version 8.2.0
-------------

Released 2025-05-10

-   Drop support for Python 3.7, 3.8, and 3.9. :pr:`2588` :pr:`2893`
-   Use modern packaging metadata with ``pyproject.toml`` instead of ``setup.cfg``.
    :pr:`2438`
-   Use ``flit_core`` instead of ``setuptools`` as build backend. :pr:`2543`
-   Deprecate the ``__version__`` attribute. Use feature detection, or
    ``importlib.metadata.version("click")``, instead. :issue:`2598`
-   ``BaseCommand`` is deprecated. ``Command`` is the base class for all
    commands. :issue:`2589`
-   ``MultiCommand`` is deprecated. ``Group`` is the base class for all group
    commands. :issue:`2590`
-   The current parser and related classes and methods, are deprecated.
    :issue:`2205`

    -   ``OptionParser`` and the ``parser`` module, which is a modified copy of
        ``optparse`` in the standard library.
    -   ``Context.protected_args`` is unneeded. ``Context.args`` contains any
        remaining arguments while parsing.
    -   ``Parameter.add_to_parser`` (on both ``Argument`` and ``Option``) is
        unneeded. Parsing works directly without building a separate parser.
    -   ``split_arg_string`` is moved from ``parser`` to ``shell_completion``.

-   Enable deferred evaluation of annotations with
    ``from __future__ import annotations``. :pr:`2270`
-   When generating a command's name from a decorated function's name, the
    suffixes ``_command``, ``_cmd``, ``_group``, and ``_grp`` are removed.
    :issue:`2322`
-   Show the ``types.ParamType.name`` for ``types.Choice`` options within
    ``--help`` message if ``show_choices=False`` is specified.
    :issue:`2356`
-   Do not display default values in prompts when ``Option.show_default`` is
    ``False``. :pr:`2509`
-   Add ``get_help_extra`` method on ``Option`` to fetch the generated extra
    items used in ``get_help_record`` to render help text. :issue:`2516`
    :pr:`2517`
-   Keep stdout and stderr streams independent in ``CliRunner``. Always
    collect stderr output and never raise an exception. Add a new
    output stream to simulate what the user sees in its terminal. Removes
    the ``mix_stderr`` parameter in ``CliRunner``. :issue:`2522` :pr:`2523`
-   ``Option.show_envvar`` now also shows environment variable in error messages.
    :issue:`2695` :pr:`2696`
-   ``Context.close`` will be called on exit. This results in all
    ``Context.call_on_close`` callbacks and context managers added via
    ``Context.with_resource`` to be closed on exit as well. :pr:`2680`
-   Add ``ProgressBar(hidden: bool)`` to allow hiding the progressbar. :issue:`2609`
-   A ``UserWarning`` will be shown when multiple parameters attempt to use the
    same name. :issue:`2396`
-   When using ``Option.envvar`` with ``Option.flag_value``, the ``flag_value``
    will always be used instead of the value of the environment variable.
    :issue:`2746` :pr:`2788`
-   Add ``Choice.get_invalid_choice_message`` method for customizing the
    invalid choice message. :issue:`2621` :pr:`2622`
-   If help is shown because ``no_args_is_help`` is enabled (defaults to ``True``
    for groups, ``False`` for commands), the exit code is 2 instead of 0.
    :issue:`1489` :pr:`1489`
-   Contexts created during shell completion are closed properly, fixing
    a ``ResourceWarning`` when using ``click.File``. :issue:`2644` :pr:`2800`
    :pr:`2767`
-   ``click.edit(filename)`` now supports passing an iterable of filenames in
    case the editor supports editing multiple files at once. Its return type
    is now also typed: ``AnyStr`` if ``text`` is passed, otherwise ``None``.
    :issue:`2067` :pr:`2068`
-   Specialized typing of ``progressbar(length=...)`` as ``ProgressBar[int]``.
    :pr:`2630`
-   Improve ``echo_via_pager`` behaviour in face of errors.
    :issue:`2674`

    -   Terminate the pager in case a generator passed to ``echo_via_pager``
        raises an exception.
    -   Ensure to always close the pipe to the pager process and wait for it
        to terminate.
    -   ``echo_via_pager`` will not ignore ``KeyboardInterrupt`` anymore. This
        allows the user to search for future output of the generator when
        using less and then aborting the program using ctrl-c.

-   ``deprecated: bool | str`` can now be used on options and arguments. This
    previously was only available for ``Command``. The message can now also be
    customised by using a ``str`` instead of a ``bool``. :issue:`2263` :pr:`2271`

    -   ``Command.deprecated`` formatting in ``--help`` changed from
        ``(Deprecated) help`` to ``help (DEPRECATED)``.
    -   Parameters cannot be required nor prompted or an error is raised.
    -   A warning will be printed when something deprecated is used.

-   Add a ``catch_exceptions`` parameter to ``CliRunner``. If
    ``catch_exceptions`` is not passed to ``CliRunner.invoke``, the value
    from ``CliRunner`` is used. :issue:`2817` :pr:`2818`
-   ``Option.flag_value`` will no longer have a default value set based on
    ``Option.default`` if ``Option.is_flag`` is ``False``. This results in
    ``Option.default`` not needing to implement `__bool__`. :pr:`2829`
-   Incorrect ``click.edit`` typing has been corrected. :pr:`2804`
-   ``Choice`` is now generic and supports any iterable value.
    This allows you to use enums and other non-``str`` values. :pr:`2796`
    :issue:`605`
-   Fix setup of help option's defaults when using a custom class on its
    decorator. Removes ``HelpOption``. :issue:`2832` :pr:`2840`
   2025-02-23 19:32:02 by Thomas Klausner | Files touched by this commit (2)
Log message:
py-click: adapt for flit_core 3.11

Bump PKGREVISION.