Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-click-extra for openSUSE:Factory checked in at 2025-06-02 22:00:09 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-click-extra (Old) and /work/SRC/openSUSE:Factory/.python-click-extra.new.16005 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-click-extra" Mon Jun 2 22:00:09 2025 rev:9 rq:1281759 version:5.0.2 Changes: -------- --- /work/SRC/openSUSE:Factory/python-click-extra/python-click-extra.changes 2025-05-30 17:25:27.759600626 +0200 +++ /work/SRC/openSUSE:Factory/.python-click-extra.new.16005/python-click-extra.changes 2025-06-02 22:00:28.841022369 +0200 @@ -1,0 +2,8 @@ +Sat May 31 13:26:50 UTC 2025 - Johannes Kastl <opensuse_buildserv...@ojkastl.de> + +- update to 5.0.2: + * Set ExtraCommand default prog_name to CLI's name to avoid it to be + named python -m <module_name> if invoked out of a module. + * Tweak exit code rendering of CLI runs. + +------------------------------------------------------------------- Old: ---- click-extra-5.0.1.tar.gz New: ---- click-extra-5.0.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-click-extra.spec ++++++ --- /var/tmp/diff_new_pack.ap2ljT/_old 2025-06-02 22:00:29.365044102 +0200 +++ /var/tmp/diff_new_pack.ap2ljT/_new 2025-06-02 22:00:29.369044267 +0200 @@ -19,7 +19,7 @@ %define module_name click-extra %{?sle15_python_module_pythons} Name: python-click-extra -Version: 5.0.1 +Version: 5.0.2 Release: 0 Summary: Drop-in replacement for Click to make user-friendly and colorful CLI License: GPL-2.0-or-later ++++++ click-extra-5.0.1.tar.gz -> click-extra-5.0.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/.github/workflows/autofix.yaml new/click-extra-5.0.2/.github/workflows/autofix.yaml --- old/click-extra-5.0.1/.github/workflows/autofix.yaml 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/.github/workflows/autofix.yaml 2025-05-31 14:28:52.000000000 +0200 @@ -10,4 +10,4 @@ jobs: autofix: - uses: kdeldycke/workflows/.github/workflows/autofix.yaml@v4.16.5 + uses: kdeldycke/workflows/.github/workflows/autofix.yaml@v4.17.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/.github/workflows/autolock.yaml new/click-extra-5.0.2/.github/workflows/autolock.yaml --- old/click-extra-5.0.1/.github/workflows/autolock.yaml 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/.github/workflows/autolock.yaml 2025-05-31 14:28:52.000000000 +0200 @@ -8,4 +8,4 @@ jobs: autolock: - uses: kdeldycke/workflows/.github/workflows/autolock.yaml@v4.16.5 + uses: kdeldycke/workflows/.github/workflows/autolock.yaml@v4.17.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/.github/workflows/changelog.yaml new/click-extra-5.0.2/.github/workflows/changelog.yaml --- old/click-extra-5.0.1/.github/workflows/changelog.yaml 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/.github/workflows/changelog.yaml 2025-05-31 14:28:52.000000000 +0200 @@ -15,4 +15,4 @@ jobs: changelog: - uses: kdeldycke/workflows/.github/workflows/changelog.yaml@v4.16.5 + uses: kdeldycke/workflows/.github/workflows/changelog.yaml@v4.17.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/.github/workflows/docs.yaml new/click-extra-5.0.2/.github/workflows/docs.yaml --- old/click-extra-5.0.1/.github/workflows/docs.yaml 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/.github/workflows/docs.yaml 2025-05-31 14:28:52.000000000 +0200 @@ -10,7 +10,7 @@ jobs: docs: - uses: kdeldycke/workflows/.github/workflows/docs.yaml@v4.16.5 + uses: kdeldycke/workflows/.github/workflows/docs.yaml@v4.17.1 update-docs: needs: docs @@ -19,7 +19,7 @@ - uses: actions/checkout@v4.2.2 - name: Install uv run: | - python -m pip install -r https://raw.githubusercontent.com/kdeldycke/workflows/v4.16.3/requirements/uv.txt + python -m pip install -r https://raw.githubusercontent.com/kdeldycke/workflows/v4.17.1/requirements/uv.txt - name: Generate dynamic doc run: | uv --no-progress run --frozen --extra pygments -m click_extra.docs_update diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/.github/workflows/label-sponsors.yaml new/click-extra-5.0.2/.github/workflows/label-sponsors.yaml --- old/click-extra-5.0.1/.github/workflows/label-sponsors.yaml 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/.github/workflows/label-sponsors.yaml 2025-05-31 14:28:52.000000000 +0200 @@ -11,4 +11,4 @@ jobs: label-sponsors: - uses: kdeldycke/workflows/.github/workflows/label-sponsors.yaml@v4.16.5 \ No newline at end of file + uses: kdeldycke/workflows/.github/workflows/label-sponsors.yaml@v4.17.1 \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/.github/workflows/labeller-content-based.yaml new/click-extra-5.0.2/.github/workflows/labeller-content-based.yaml --- old/click-extra-5.0.1/.github/workflows/labeller-content-based.yaml 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/.github/workflows/labeller-content-based.yaml 2025-05-31 14:28:52.000000000 +0200 @@ -9,4 +9,4 @@ jobs: labeller: - uses: kdeldycke/workflows/.github/workflows/labeller-file-based.yaml@v4.16.5 \ No newline at end of file + uses: kdeldycke/workflows/.github/workflows/labeller-file-based.yaml@v4.17.1 \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/.github/workflows/labeller-file-based.yaml new/click-extra-5.0.2/.github/workflows/labeller-file-based.yaml --- old/click-extra-5.0.1/.github/workflows/labeller-file-based.yaml 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/.github/workflows/labeller-file-based.yaml 2025-05-31 14:28:52.000000000 +0200 @@ -6,4 +6,4 @@ jobs: labeller: - uses: kdeldycke/workflows/.github/workflows/labeller-file-based.yaml@v4.16.5 + uses: kdeldycke/workflows/.github/workflows/labeller-file-based.yaml@v4.17.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/.github/workflows/labels.yaml new/click-extra-5.0.2/.github/workflows/labels.yaml --- old/click-extra-5.0.1/.github/workflows/labels.yaml 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/.github/workflows/labels.yaml 2025-05-31 14:28:52.000000000 +0200 @@ -8,4 +8,4 @@ jobs: labels: - uses: kdeldycke/workflows/.github/workflows/labels.yaml@v4.16.5 + uses: kdeldycke/workflows/.github/workflows/labels.yaml@v4.17.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/.github/workflows/lint.yaml new/click-extra-5.0.2/.github/workflows/lint.yaml --- old/click-extra-5.0.1/.github/workflows/lint.yaml 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/.github/workflows/lint.yaml 2025-05-31 14:28:52.000000000 +0200 @@ -9,4 +9,4 @@ jobs: lint: - uses: kdeldycke/workflows/.github/workflows/lint.yaml@v4.16.5 + uses: kdeldycke/workflows/.github/workflows/lint.yaml@v4.17.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/.github/workflows/release.yaml new/click-extra-5.0.2/.github/workflows/release.yaml --- old/click-extra-5.0.1/.github/workflows/release.yaml 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/.github/workflows/release.yaml 2025-05-31 14:28:52.000000000 +0200 @@ -10,6 +10,6 @@ jobs: release: - uses: kdeldycke/workflows/.github/workflows/release.yaml@v4.16.5 + uses: kdeldycke/workflows/.github/workflows/release.yaml@v4.17.1 secrets: PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }} \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/.github/workflows/tests.yaml new/click-extra-5.0.2/.github/workflows/tests.yaml --- old/click-extra-5.0.1/.github/workflows/tests.yaml 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/.github/workflows/tests.yaml 2025-05-31 14:28:52.000000000 +0200 @@ -132,7 +132,7 @@ - uses: actions/checkout@v4.2.2 - name: Install uv run: | - python -m pip install -r https://raw.githubusercontent.com/kdeldycke/workflows/v4.16.3/requirements/uv.txt + python -m pip install -r https://raw.githubusercontent.com/kdeldycke/workflows/v4.17.1/requirements/uv.txt - name: Install project run: | uv --no-progress venv --python ${{ matrix.python-version }} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/changelog.md new/click-extra-5.0.2/changelog.md --- old/click-extra-5.0.1/changelog.md 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/changelog.md 2025-05-31 14:28:52.000000000 +0200 @@ -1,5 +1,10 @@ # Changelog +## [5.0.2 (2025-05-31)](https://github.com/kdeldycke/click-extra/compare/v5.0.1...v5.0.2) + +- Set `ExtraCommand` default `prog_name` to CLI's `name` to avoid it to be named `python -m <module_name>` if invoked out of a module. +- Tweak exit code rendering of CLI runs. + ## [5.0.1 (2025-05-28)](https://github.com/kdeldycke/click-extra/compare/v5.0.0...v5.0.1) - Fix highlighting of deprecated messages. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/citation.cff new/click-extra-5.0.2/citation.cff --- old/click-extra-5.0.1/citation.cff 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/citation.cff 2025-05-31 14:28:52.000000000 +0200 @@ -8,8 +8,8 @@ email: ke...@deldycke.com orcid: "https://orcid.org/0000-0001-9748-9014" doi: 10.5281/zenodo.7116050 -version: 5.0.1 +version: 5.0.2 # The release date is kept up to date by the external workflows. See: # https://github.com/kdeldycke/workflows/blob/33b704b489c1aa18b7b7efbf963e153e91e1c810/.github/workflows/changelog.yaml#L135-L137 -date-released: 2025-05-13 +date-released: 2025-05-28 url: "https://github.com/kdeldycke/click-extra" \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/click_extra/__init__.py new/click-extra-5.0.2/click_extra/__init__.py --- old/click-extra-5.0.1/click_extra/__init__.py 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/click_extra/__init__.py 2025-05-31 14:28:52.000000000 +0200 @@ -15,7 +15,7 @@ # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. """Expose package-wide elements.""" -__version__ = "5.0.1" +__version__ = "5.0.2" """Examples of valid version strings according :pep:`440#version-scheme`: .. code-block:: python diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/click_extra/commands.py new/click-extra-5.0.2/click_extra/commands.py --- old/click-extra-5.0.1/click_extra/commands.py 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/click_extra/commands.py 2025-05-31 14:28:52.000000000 +0200 @@ -22,7 +22,7 @@ from __future__ import annotations -from typing import Any +from typing import Any, NoReturn, Sequence import click import cloup @@ -328,14 +328,29 @@ _grouped_params = self._group_params(self.params) # type: ignore[attr-defined] self.arguments, self.option_groups, self.ungrouped_options = _grouped_params - def main(self, *args, **kwargs): + def main( # type: ignore[override] + self, + args: Sequence[str] | None = None, + prog_name: str | None = None, + **kwargs: Any, + ) -> Any | NoReturn: """Pre-invocation step that is instantiating the context, then call ``invoke()`` within it. - During context instantiation, each option's callbacks are called. Beware that - these might break the execution flow (like ``--help`` or ``--version``). + .. caution:: + + During context instantiation, each option's callbacks are called. These + might break the execution flow (like ``--help`` or ``--version``). + + Sets the default CLI's ``prog_name`` to the command's name if not provided, + instead of relying on Click's auto-detection via the + ``_detect_program_name()`` method. This is to avoid the CLI being called + ``python -m <module_name>``, which is not very user-friendly. """ - return super().main(*args, **kwargs) + if not prog_name and self.name: + prog_name = self.name + + return super().main(args=args, prog_name=prog_name, **kwargs) def make_context( self, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/click_extra/testing.py new/click-extra-5.0.2/click_extra/testing.py --- old/click-extra-5.0.1/click_extra/testing.py 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/click_extra/testing.py 2025-05-31 14:28:52.000000000 +0200 @@ -97,7 +97,7 @@ cmd_str = default_theme.invoked_command(" ".join(cmd_args)) - return f"{PROMPT}{extra_env_string}{cmd_str}" + return PROMPT + extra_env_string + cmd_str def render_cli_run( @@ -127,19 +127,20 @@ exit_code = result.returncode # Render the execution trace. - trace = prompt + "\n" + trace = [] + trace.append(prompt) if output: - trace += f"{PROMPT}{Style(fg=Color.blue)('<output>')} stream:\n" - trace += indent(output, INDENT) + "\n" + trace.append(f"{Style(fg=Color.blue)('<output>')} stream:") + trace.append(indent(output, INDENT)) if stdout: - trace += f"{PROMPT}{Style(fg=Color.green)('<stdout>')} stream:\n" - trace += indent(stdout, INDENT) + "\n" + trace.append(f"{Style(fg=Color.green)('<stdout>')} stream:") + trace.append(indent(stdout, INDENT)) if stderr: - trace += f"{PROMPT}{Style(fg=Color.red)('<stderr>')} stream:\n" - trace += indent(stderr, INDENT) + "\n" + trace.append(f"{Style(fg=Color.red)('<stderr>')} stream:") + trace.append(indent(stderr, INDENT)) if exit_code is not None: - trace += f"{PROMPT}{Style(fg=Color.yellow)('Exit code:')} {exit_code}\n" - return trace + "\n" + trace.append(f"{Style(fg=Color.yellow)('<exit_code>')}: {exit_code}") + return "\n".join(trace) def print_cli_run( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/docs/assets/dependencies.mmd new/click-extra-5.0.2/docs/assets/dependencies.mmd --- old/click-extra-5.0.1/docs/assets/dependencies.mmd 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/docs/assets/dependencies.mmd 2025-05-31 14:28:52.000000000 +0200 @@ -4,11 +4,11 @@ bracex["bracex\n2.5.post1"] certifi["certifi\n2025.4.26"] charset-normalizer["charset-normalizer\n3.4.2"] - click-extra["click-extra\n5.0.0"] - click_0["click\n8.2.0"] + click-extra["click-extra\n5.0.2"] + click_0["click\n8.2.1"] cloup["cloup\n3.0.7"] distro["distro\n1.9.0"] - extra-platforms["extra-platforms\n3.1.0"] + extra-platforms["extra-platforms\n3.2.2"] idna["idna\n3.10"] mergedeep["mergedeep\n1.3.4"] pyyaml["PyYAML\n6.0.2"] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/pyproject.toml new/click-extra-5.0.2/pyproject.toml --- old/click-extra-5.0.1/pyproject.toml 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/pyproject.toml 2025-05-31 14:28:52.000000000 +0200 @@ -1,7 +1,7 @@ [project] # Docs: https://packaging.python.org/en/latest/guides/writing-pyproject-toml/ name = "click-extra" -version = "5.0.1" +version = "5.0.2" # Python versions and their status: https://devguide.python.org/versions/ requires-python = ">= 3.11" description = "🌈 Drop-in replacement for Click to make user-friendly and colorful CLI" @@ -198,7 +198,7 @@ xfail_strict = true [tool.bumpversion] -current_version = "5.0.1" +current_version = "5.0.2" allow_dirty = true [[tool.bumpversion.files]] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/click-extra-5.0.1/uv.lock new/click-extra-5.0.2/uv.lock --- old/click-extra-5.0.1/uv.lock 2025-05-28 13:14:48.000000000 +0200 +++ new/click-extra-5.0.2/uv.lock 2025-05-31 14:28:52.000000000 +0200 @@ -122,7 +122,7 @@ [[package]] name = "click-extra" -version = "5.0.1" +version = "5.0.2" source = { editable = "." } dependencies = [ { name = "boltons" },