From b8ae7e47e074fb61dc96e40fb7db12e55d56362b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 1 Oct 2025 16:24:51 +0000 Subject: [PATCH 1/2] Bump the minor group with 10 updates Bumps the minor group with 10 updates: | Package | From | To | | --- | --- | --- | | [asyncclick](https://github.com/python-trio/asyncclick) | `8.1.8` | `8.2.2.2` | | [black](https://github.com/psf/black) | `25.1.0` | `25.9.0` | | [markdown](https://github.com/Python-Markdown/markdown) | `3.8.2` | `3.9` | | [mkdocs-macros-plugin](https://github.com/fralau/mkdocs_macros_plugin) | `1.3.9` | `1.4.0` | | [mypy](https://github.com/python/mypy) | `1.17.1` | `1.18.2` | | [types-markdown](https://github.com/typeshed-internal/stub_uploader) | `3.8.0.20250809` | `3.9.0.20250906` | | [types-protobuf](https://github.com/typeshed-internal/stub_uploader) | `6.30.2.20250703` | `6.32.1.20250918` | | [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.1` | `3.15.1` | | [time-machine](https://github.com/adamchainz/time-machine) | `2.16.0` | `2.19.0` | | [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.136.8` | `6.140.2` | Updates `asyncclick` from 8.1.8 to 8.2.2.2 - [Changelog](https://github.com/python-trio/asyncclick/blob/main/CHANGES.rst) - [Commits](https://github.com/python-trio/asyncclick/commits) Updates `black` from 25.1.0 to 25.9.0 - [Release notes](https://github.com/psf/black/releases) - [Changelog](https://github.com/psf/black/blob/main/CHANGES.md) - [Commits](https://github.com/psf/black/compare/25.1.0...25.9.0) Updates `markdown` from 3.8.2 to 3.9 - [Release notes](https://github.com/Python-Markdown/markdown/releases) - [Changelog](https://github.com/Python-Markdown/markdown/blob/master/docs/changelog.md) - [Commits](https://github.com/Python-Markdown/markdown/compare/3.8.2...3.9.0) Updates `mkdocs-macros-plugin` from 1.3.9 to 1.4.0 - [Release notes](https://github.com/fralau/mkdocs_macros_plugin/releases) - [Changelog](https://github.com/fralau/mkdocs-macros-plugin/blob/master/CHANGELOG.md) - [Commits](https://github.com/fralau/mkdocs_macros_plugin/compare/v1.3.9...v1.4.0) Updates `mypy` from 1.17.1 to 1.18.2 - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.17.1...v1.18.2) Updates `types-markdown` from 3.8.0.20250809 to 3.9.0.20250906 - [Commits](https://github.com/typeshed-internal/stub_uploader/commits) Updates `types-protobuf` from 6.30.2.20250703 to 6.32.1.20250918 - [Commits](https://github.com/typeshed-internal/stub_uploader/commits) Updates `pytest-mock` from 3.14.1 to 3.15.1 - [Release notes](https://github.com/pytest-dev/pytest-mock/releases) - [Changelog](https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest-mock/compare/v3.14.1...v3.15.1) Updates `time-machine` from 2.16.0 to 2.19.0 - [Changelog](https://github.com/adamchainz/time-machine/blob/main/docs/changelog.rst) - [Commits](https://github.com/adamchainz/time-machine/compare/2.16.0...2.19.0) Updates `hypothesis` from 6.136.8 to 6.140.2 - [Release notes](https://github.com/HypothesisWorks/hypothesis/releases) - [Commits](https://github.com/HypothesisWorks/hypothesis/compare/hypothesis-python-6.136.8...hypothesis-python-6.140.2) --- updated-dependencies: - dependency-name: asyncclick dependency-version: 8.2.2.2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: minor - dependency-name: black dependency-version: 25.9.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: minor - dependency-name: markdown dependency-version: '3.9' dependency-type: direct:production update-type: version-update:semver-minor dependency-group: minor - dependency-name: mkdocs-macros-plugin dependency-version: 1.4.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: minor - dependency-name: mypy dependency-version: 1.18.2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: minor - dependency-name: types-markdown dependency-version: 3.9.0.20250906 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: minor - dependency-name: types-protobuf dependency-version: 6.32.1.20250918 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: minor - dependency-name: pytest-mock dependency-version: 3.15.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: minor - dependency-name: time-machine dependency-version: 2.19.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: minor - dependency-name: hypothesis dependency-version: 6.140.2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: minor ... Signed-off-by: dependabot[bot] --- pyproject.toml | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 60206e3..4205c56 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -55,7 +55,7 @@ email = "floss@frequenz.com" [project.optional-dependencies] cli = [ - "asyncclick == 8.1.8", + "asyncclick == 8.2.2.2", "prompt-toolkit == 3.0.52", "parsedatetime == 2.6", "tzlocal == 5.3.1", @@ -68,26 +68,26 @@ dev-flake8 = [ "pydoclint == 0.6.11", "pydocstyle == 6.3.0", ] -dev-formatting = ["black == 25.1.0", "isort == 6.0.1"] +dev-formatting = ["black == 25.9.0", "isort == 6.0.1"] dev-mkdocs = [ - "black == 25.1.0", - "Markdown == 3.8.2", + "black == 25.9.0", + "Markdown == 3.9", "mike == 2.1.3", "mkdocs-gen-files == 0.5.0", "mkdocs-literate-nav == 0.6.2", "frequenz-api-dispatch == 1.0.0-rc3", - "mkdocs-macros-plugin == 1.3.9", + "mkdocs-macros-plugin == 1.4.0", "mkdocs-material == 9.6.18", "mkdocstrings[python] == 0.30.0", "frequenz-repo-config[lib] == 0.13.5", ] dev-mypy = [ - "mypy == 1.17.1", - "types-Markdown == 3.8.0.20250809", + "mypy == 1.18.2", + "types-Markdown == 3.9.0.20250906", # For checking the noxfile, docs/ script, and tests "frequenz-client-dispatch[cli,dev-mkdocs,dev-noxfile,dev-pytest]", "grpc-stubs == 1.53.0.6", - "types-protobuf == 6.30.2.20250703", + "types-protobuf == 6.32.1.20250918", "types-python-dateutil == 2.9.0.20250822", ] dev-noxfile = ["nox == 2025.5.1", "frequenz-repo-config[lib] == 0.13.5"] @@ -100,11 +100,11 @@ dev-pylint = [ dev-pytest = [ "pytest == 8.4.1", "frequenz-repo-config[extra-lint-examples] == 0.13.5", - "pytest-mock == 3.14.1", + "pytest-mock == 3.15.1", "pytest-asyncio == 1.2.0", "async-solipsism == 0.8", - "time-machine == 2.16.0", - "hypothesis == 6.136.8", + "time-machine == 2.19.0", + "hypothesis == 6.140.2", "frequenz-client-dispatch[cli]", ] dev = [ From e1ebf78af554e245d3db67b91a08b17bd75262ff Mon Sep 17 00:00:00 2001 From: "Mathias L. Baumann" Date: Wed, 1 Oct 2025 18:37:33 +0200 Subject: [PATCH 2/2] fix: use shlex.split for proper command argument parsing in interactive mode Replace click.parser.split_arg_string with shlex.split to handle quoted arguments correctly in the interactive CLI mode. This ensures that quoted strings with spaces are properly preserved as single arguments rather than being split incorrectly. Signed-off-by: Mathias L. Baumann --- src/frequenz/client/dispatch/__main__.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/frequenz/client/dispatch/__main__.py b/src/frequenz/client/dispatch/__main__.py index 1306e32..acfe7e1 100644 --- a/src/frequenz/client/dispatch/__main__.py +++ b/src/frequenz/client/dispatch/__main__.py @@ -5,6 +5,7 @@ import asyncio import os +import shlex from datetime import datetime, timezone from pprint import pformat from typing import Any, List @@ -671,7 +672,7 @@ async def display_help() -> None: params = ( ["--url", url, "--auth-key", auth_key] + (["--sign-secret", sign_secret] if sign_secret else []) - + click.parser.split_arg_string(user_input) + + shlex.split(user_input) ) try: