Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-pytest-shell-utilities for openSUSE:Factory checked in at 2024-03-08 18:10:22 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-pytest-shell-utilities (Old) and /work/SRC/openSUSE:Factory/.python-pytest-shell-utilities.new.1770 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pytest-shell-utilities" Fri Mar 8 18:10:22 2024 rev:5 rq:1156333 version:1.9.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-pytest-shell-utilities/python-pytest-shell-utilities.changes 2024-02-12 18:54:07.598656889 +0100 +++ /work/SRC/openSUSE:Factory/.python-pytest-shell-utilities.new.1770/python-pytest-shell-utilities.changes 2024-03-08 18:10:31.285099378 +0100 @@ -1,0 +2,16 @@ +Fri Mar 1 10:20:21 UTC 2024 - Dirk Müller <dmuel...@suse.com> + +- update to 1.9.0: + * Drop support for Python older than 3.8 and Pytest older than + 7.4.x + * The printed output is now the result of json.dumps instead of + pprint.pformat + * Several minor changes to the code base: Update copyright + headers Update pre-commit hook versions (#43) + * Update copyright headers + * Update pre-commit hook versions + * Drop support for python versions older than 3.7 + * Support Python 3.11 + * Set minimal attrs version to 22.1.0 + +------------------------------------------------------------------- Old: ---- pytest-shell-utilities-1.8.0.tar.gz New: ---- _multibuild pytest-shell-utilities-1.9.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-pytest-shell-utilities.spec ++++++ --- /var/tmp/diff_new_pack.lPypjc/_old 2024-03-08 18:10:31.909122309 +0100 +++ /var/tmp/diff_new_pack.lPypjc/_new 2024-03-08 18:10:31.909122309 +0100 @@ -26,7 +26,7 @@ %endif %{?sle15_python_module_pythons} Name: python-pytest-shell-utilities%{psuffix} -Version: 1.8.0 +Version: 1.9.0 Release: 0 Summary: Pytest plugin to simplify running shell commands against the system License: Apache-2.0 ++++++ _multibuild ++++++ <multibuild> <package>test</package> </multibuild> ++++++ pytest-shell-utilities-1.8.0.tar.gz -> pytest-shell-utilities-1.9.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/.github/workflows/testing.yml new/pytest-shell-utilities-1.9.0/.github/workflows/testing.yml --- old/pytest-shell-utilities-1.8.0/.github/workflows/testing.yml 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/.github/workflows/testing.yml 2024-02-23 11:38:34.000000000 +0100 @@ -111,16 +111,13 @@ max-parallel: 15 matrix: python-version: - - "3.7" - "3.8" - "3.9" - "3.10" - "3.11" pytest-version: - - "7.1.0" - - "7.2.0" - - "7.3.0" - "7.4.0" + - "8.0.0" steps: - uses: actions/checkout@v3 @@ -187,16 +184,13 @@ max-parallel: 15 matrix: python-version: - - "3.7" - "3.8" - "3.9" - "3.10" - "3.11" pytest-version: - - "7.1.0" - - "7.2.0" - - "7.3.0" - "7.4.0" + - "8.0.0" steps: - uses: actions/checkout@v3 @@ -267,16 +261,13 @@ max-parallel: 15 matrix: python-version: - - "3.7" - "3.8" - "3.9" - "3.10" - "3.11" pytest-version: - - "7.1.0" - - "7.2.0" - - "7.3.0" - "7.4.0" + - "8.0.0" steps: - uses: actions/checkout@v3 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/.pre-commit-config.yaml new/pytest-shell-utilities-1.9.0/.pre-commit-config.yaml --- old/pytest-shell-utilities-1.8.0/.pre-commit-config.yaml 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/.pre-commit-config.yaml 2024-02-23 11:38:34.000000000 +0100 @@ -2,12 +2,11 @@ minimum_pre_commit_version: 2.9.2 repos: - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.4.0 + rev: v4.5.0 hooks: - id: check-merge-conflict # Check for files that contain merge conflict strings. - id: trailing-whitespace args: [--markdown-linebreak-ext=md] - exclude: ^src/pytestshellutils/downgraded/.*\.py$ - id: mixed-line-ending # Replaces or checks mixed line ending. args: [--fix=lf] - id: end-of-file-fixer @@ -45,28 +44,18 @@ - id: remove-import-headers - repo: https://github.com/asottile/pyupgrade - rev: v3.3.1 + rev: v3.15.1 hooks: - id: pyupgrade - name: Rewrite Code to be Py3.5+ + name: Rewrite Code to be Py3.8+ args: [ - --py3-plus - ] - files: ^((setup|noxfile|tests/.*|src/pytestshellutils/__init__)\.py)$ - - - repo: https://github.com/asottile/pyupgrade - rev: v3.3.1 - hooks: - - id: pyupgrade - name: Rewrite Code to be Py3.7+ - args: [ - --py37-plus + --py38-plus ] files: ^(src/.*\.py)$ exclude: ^src/pytestshellutils/(__init__|version)\.py$ - repo: https://github.com/asottile/reorder_python_imports - rev: v3.9.0 + rev: v3.12.0 hooks: - id: reorder-python-imports args: @@ -75,22 +64,22 @@ exclude: ^src/pytestshellutils/version\.py$ - repo: https://github.com/psf/black - rev: 22.12.0 + rev: 24.2.0 hooks: - id: black args: [-l 100] exclude: ^src/pytestshellutils/version\.py$ - repo: https://github.com/asottile/blacken-docs - rev: v1.12.1 + rev: 1.16.0 hooks: - id: blacken-docs args: [--skip-errors] files: ^(.*\.rst|docs/.*\.rst|src/pytestshellutils/.*\.py)$ - additional_dependencies: [black==22.8.0] + additional_dependencies: [black==24.2.0] - repo: https://github.com/pre-commit/mirrors-mypy - rev: v1.4.1 + rev: v1.8.0 hooks: - id: mypy alias: mypy-tools @@ -104,7 +93,7 @@ - types-requests - repo: https://github.com/s0undt3ch/python-tools-scripts - rev: "0.15.0" + rev: "0.20.0" hooks: - id: tools alias: actionlint @@ -121,7 +110,7 @@ # ----- Security --------------------------------------------------------------------------------------------------> - repo: https://github.com/PyCQA/bandit - rev: "1.7.4" + rev: "1.7.7" hooks: - id: bandit alias: bandit-salt @@ -130,7 +119,7 @@ files: ^(?!tests/).*\.py$ exclude: ^src/pytestshellutils/version\.py$ - repo: https://github.com/PyCQA/bandit - rev: "1.7.4" + rev: "1.7.7" hooks: - id: bandit alias: bandit-tests @@ -141,7 +130,7 @@ # ----- Code Analysis ---------------------------------------------------------------------------------------------> - repo: https://github.com/pycqa/flake8 - rev: '6.0.0' + rev: '7.0.0' hooks: - id: flake8 exclude: ^(src/pytestshellutils/version\.py|\.pre-commit-hooks/.*\.py)$ @@ -153,7 +142,7 @@ - flake8-typing-imports - repo: https://github.com/pre-commit/mirrors-mypy - rev: v0.991 + rev: v1.8.0 hooks: - id: mypy files: ^((src|tests)/.*\.py)$ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/.pre-commit-hooks/check-changelog-entries.py new/pytest-shell-utilities-1.9.0/.pre-commit-hooks/check-changelog-entries.py --- old/pytest-shell-utilities-1.8.0/.pre-commit-hooks/check-changelog-entries.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/.pre-commit-hooks/check-changelog-entries.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # # pylint: disable=invalid-name,missing-module-docstring,missing-function-docstring diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/.pre-commit-hooks/copyright-headers.py new/pytest-shell-utilities-1.9.0/.pre-commit-hooks/copyright-headers.py --- old/pytest-shell-utilities-1.8.0/.pre-commit-hooks/copyright-headers.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/.pre-commit-hooks/copyright-headers.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # # pylint: disable=invalid-name,missing-module-docstring,missing-function-docstring diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/.pre-commit-hooks/sort-pylint-spelling-words.py new/pytest-shell-utilities-1.9.0/.pre-commit-hooks/sort-pylint-spelling-words.py --- old/pytest-shell-utilities-1.8.0/.pre-commit-hooks/sort-pylint-spelling-words.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/.pre-commit-hooks/sort-pylint-spelling-words.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,5 +1,5 @@ #!/usr/bin/env python -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # pylint: skip-file import pathlib diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/CHANGELOG.rst new/pytest-shell-utilities-1.9.0/CHANGELOG.rst --- old/pytest-shell-utilities-1.8.0/CHANGELOG.rst 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/CHANGELOG.rst 2024-02-23 11:38:34.000000000 +0100 @@ -13,6 +13,30 @@ .. towncrier release notes start +shell-utilities 1.9.0 (2024-02-23) +================================== + +Breaking Changes +---------------- + +- Drop support for Python older than 3.8 and Pytest older than 7.4.x (`#43 <https://github.com/saltstack/pytest-shell-utilities/issues/43>`_) + + +Bug Fixes +--------- + +- The printed output is now the result of `json.dumps` instead of `pprint.pformat` (`#42 <https://github.com/saltstack/pytest-shell-utilities/issues/42>`_) + + +Trivial/Internal Changes +------------------------ + +- Several minor changes to the code base: + + * Update copyright headers + * Update pre-commit hook versions (`#43 <https://github.com/saltstack/pytest-shell-utilities/issues/43>`_) + + shell-utilities 1.8.0 (2023-07-02) ================================== diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/PKG-INFO new/pytest-shell-utilities-1.9.0/PKG-INFO --- old/pytest-shell-utilities-1.8.0/PKG-INFO 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/PKG-INFO 2024-02-23 11:38:34.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: pytest-shell-utilities -Version: 1.8.0 +Version: 1.9.0 Summary: Pytest plugin to simplify running shell commands against the system Home-page: https://github.com/saltstack/pytest-shell-utilities Author: Pedro Algarvio @@ -18,7 +18,6 @@ Classifier: Programming Language :: Cython Classifier: Programming Language :: Python :: 3 Classifier: Programming Language :: Python :: 3 :: Only -Classifier: Programming Language :: Python :: 3.7 Classifier: Programming Language :: Python :: 3.8 Classifier: Programming Language :: Python :: 3.9 Classifier: Programming Language :: Python :: 3.10 @@ -27,13 +26,35 @@ Classifier: Development Status :: 5 - Production/Stable Classifier: Intended Audience :: Developers Classifier: License :: OSI Approved :: Apache Software License -Requires-Python: >=3.7 +Requires-Python: >=3.8 Description-Content-Type: text/x-rst +License-File: LICENSE +Requires-Dist: pytest>=7.4.0 +Requires-Dist: attrs>=22.1.0 +Requires-Dist: psutil>=5.0.0 +Requires-Dist: pytest-helpers-namespace +Requires-Dist: pytest-skip-markers Provides-Extra: docs +Requires-Dist: furo; extra == "docs" +Requires-Dist: sphinx; extra == "docs" +Requires-Dist: sphinx-copybutton; extra == "docs" +Requires-Dist: sphinx-prompt; extra == "docs" +Requires-Dist: sphinxcontrib-spelling; extra == "docs" +Requires-Dist: sphinxcontrib-towncrier>=0.2.1a0; extra == "docs" Provides-Extra: lint +Requires-Dist: pylint==2.12.2; extra == "lint" +Requires-Dist: pyenchant; extra == "lint" +Requires-Dist: black; python_version >= "3.7" and extra == "lint" +Requires-Dist: reorder-python-imports; python_version >= "3.7" and extra == "lint" +Requires-Dist: flake8>=4.0.1; extra == "lint" +Requires-Dist: flake8-mypy-fork; extra == "lint" +Requires-Dist: flake8-docstrings; extra == "lint" +Requires-Dist: flake8-typing-imports; extra == "lint" Provides-Extra: tests +Requires-Dist: pytest-subtests; extra == "tests" +Requires-Dist: pytest-skip-markers; extra == "tests" Provides-Extra: changelog -License-File: LICENSE +Requires-Dist: towncrier==21.9.0rc1; extra == "changelog" .. image:: https://img.shields.io/github/workflow/status/saltstack/pytest-shell-utilities/CI/main?style=plastic :target: https://github.com/saltstack/pytest-shell-utilities/actions/workflows/testing.yml diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/docs/conf.py new/pytest-shell-utilities-1.9.0/docs/conf.py --- old/pytest-shell-utilities-1.8.0/docs/conf.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/docs/conf.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # # Configuration file for the Sphinx documentation builder. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/noxfile.py new/pytest-shell-utilities-1.9.0/noxfile.py --- old/pytest-shell-utilities-1.8.0/noxfile.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/noxfile.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # # pylint: disable=import-error,protected-access,line-too-long @@ -280,7 +280,7 @@ """ Run PyLint against the code. Set PYLINT_REPORT to a path to capture output. """ - flags = ["--disable=I", "--ignore-paths=src/pytestshellutils/downgraded/.*"] + flags = ["--disable=I"] if session.posargs: paths = session.posargs else: @@ -488,7 +488,7 @@ d_targz = tempd.joinpath(targz.name) with tarfile.open(d_tar, "w|") as wfile: with tarfile.open(targz, "r:gz") as rfile: - rfile.extractall(d_src) + rfile.extractall(d_src) # nosec extracted_dir = next(pathlib.Path(d_src).iterdir()) for name in sorted(extracted_dir.rglob("*")): wfile.add( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/requirements/base.txt new/pytest-shell-utilities-1.9.0/requirements/base.txt --- old/pytest-shell-utilities-1.8.0/requirements/base.txt 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/requirements/base.txt 2024-02-23 11:38:34.000000000 +0100 @@ -1,6 +1,5 @@ -pytest>=7.1.0 +pytest>=7.4.0 attrs>=22.1.0 psutil>=5.0.0 -typing-extensions pytest-helpers-namespace pytest-skip-markers diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/setup.cfg new/pytest-shell-utilities-1.9.0/setup.cfg --- old/pytest-shell-utilities-1.8.0/setup.cfg 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/setup.cfg 2024-02-23 11:38:34.000000000 +0100 @@ -16,7 +16,6 @@ Programming Language :: Cython Programming Language :: Python :: 3 Programming Language :: Python :: 3 :: Only - Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 Programming Language :: Python :: 3.10 @@ -33,7 +32,7 @@ package_dir = =src packages = find: -python_requires = >= 3.7 +python_requires = >= 3.8 setup_requires = setuptools>=50.3.2 setuptools_scm[toml]>=3.4 @@ -95,7 +94,7 @@ docstring-convention = google [mypy] -python_version = 3.7 +python_version = 3.8 mypy_path = src ignore_missing_imports = True no_implicit_optional = True diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/setup.py new/pytest-shell-utilities-1.9.0/setup.py --- old/pytest-shell-utilities-1.8.0/setup.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/setup.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,5 +1,5 @@ #!/usr/bin/env python -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # import setuptools diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/src/pytest_shell_utilities.egg-info/PKG-INFO new/pytest-shell-utilities-1.9.0/src/pytest_shell_utilities.egg-info/PKG-INFO --- old/pytest-shell-utilities-1.8.0/src/pytest_shell_utilities.egg-info/PKG-INFO 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/src/pytest_shell_utilities.egg-info/PKG-INFO 2024-02-23 11:38:34.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: pytest-shell-utilities -Version: 1.8.0 +Version: 1.9.0 Summary: Pytest plugin to simplify running shell commands against the system Home-page: https://github.com/saltstack/pytest-shell-utilities Author: Pedro Algarvio @@ -18,7 +18,6 @@ Classifier: Programming Language :: Cython Classifier: Programming Language :: Python :: 3 Classifier: Programming Language :: Python :: 3 :: Only -Classifier: Programming Language :: Python :: 3.7 Classifier: Programming Language :: Python :: 3.8 Classifier: Programming Language :: Python :: 3.9 Classifier: Programming Language :: Python :: 3.10 @@ -27,13 +26,35 @@ Classifier: Development Status :: 5 - Production/Stable Classifier: Intended Audience :: Developers Classifier: License :: OSI Approved :: Apache Software License -Requires-Python: >=3.7 +Requires-Python: >=3.8 Description-Content-Type: text/x-rst +License-File: LICENSE +Requires-Dist: pytest>=7.4.0 +Requires-Dist: attrs>=22.1.0 +Requires-Dist: psutil>=5.0.0 +Requires-Dist: pytest-helpers-namespace +Requires-Dist: pytest-skip-markers Provides-Extra: docs +Requires-Dist: furo; extra == "docs" +Requires-Dist: sphinx; extra == "docs" +Requires-Dist: sphinx-copybutton; extra == "docs" +Requires-Dist: sphinx-prompt; extra == "docs" +Requires-Dist: sphinxcontrib-spelling; extra == "docs" +Requires-Dist: sphinxcontrib-towncrier>=0.2.1a0; extra == "docs" Provides-Extra: lint +Requires-Dist: pylint==2.12.2; extra == "lint" +Requires-Dist: pyenchant; extra == "lint" +Requires-Dist: black; python_version >= "3.7" and extra == "lint" +Requires-Dist: reorder-python-imports; python_version >= "3.7" and extra == "lint" +Requires-Dist: flake8>=4.0.1; extra == "lint" +Requires-Dist: flake8-mypy-fork; extra == "lint" +Requires-Dist: flake8-docstrings; extra == "lint" +Requires-Dist: flake8-typing-imports; extra == "lint" Provides-Extra: tests +Requires-Dist: pytest-subtests; extra == "tests" +Requires-Dist: pytest-skip-markers; extra == "tests" Provides-Extra: changelog -License-File: LICENSE +Requires-Dist: towncrier==21.9.0rc1; extra == "changelog" .. image:: https://img.shields.io/github/workflow/status/saltstack/pytest-shell-utilities/CI/main?style=plastic :target: https://github.com/saltstack/pytest-shell-utilities/actions/workflows/testing.yml diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/src/pytest_shell_utilities.egg-info/requires.txt new/pytest-shell-utilities-1.9.0/src/pytest_shell_utilities.egg-info/requires.txt --- old/pytest-shell-utilities-1.8.0/src/pytest_shell_utilities.egg-info/requires.txt 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/src/pytest_shell_utilities.egg-info/requires.txt 2024-02-23 11:38:34.000000000 +0100 @@ -1,7 +1,6 @@ -pytest>=7.1.0 +pytest>=7.4.0 attrs>=22.1.0 psutil>=5.0.0 -typing-extensions pytest-helpers-namespace pytest-skip-markers diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/src/pytestshellutils/__init__.py new/pytest-shell-utilities-1.9.0/src/pytestshellutils/__init__.py --- old/pytest-shell-utilities-1.8.0/src/pytestshellutils/__init__.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/src/pytestshellutils/__init__.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # # type: ignore diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/src/pytestshellutils/customtypes.py new/pytest-shell-utilities-1.9.0/src/pytestshellutils/customtypes.py --- old/pytest-shell-utilities-1.8.0/src/pytestshellutils/customtypes.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/src/pytestshellutils/customtypes.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 """ Custom Types. @@ -8,11 +8,11 @@ from typing import Any from typing import Callable from typing import Dict +from typing import Protocol from typing import Tuple from typing import TYPE_CHECKING import attr -from typing_extensions import Protocol from pytestshellutils.utils import format_callback_to_string diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/src/pytestshellutils/exceptions.py new/pytest-shell-utilities-1.9.0/src/pytestshellutils/exceptions.py --- old/pytest-shell-utilities-1.8.0/src/pytestshellutils/exceptions.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/src/pytestshellutils/exceptions.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 """ Pytest Shell Utilities related exceptions. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/src/pytestshellutils/plugin.py new/pytest-shell-utilities-1.9.0/src/pytestshellutils/plugin.py --- old/pytest-shell-utilities-1.8.0/src/pytestshellutils/plugin.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/src/pytestshellutils/plugin.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # """ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/src/pytestshellutils/shell.py new/pytest-shell-utilities-1.9.0/src/pytestshellutils/shell.py --- old/pytest-shell-utilities-1.8.0/src/pytestshellutils/shell.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/src/pytestshellutils/shell.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 """ Shelling class implementations. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/src/pytestshellutils/utils/__init__.py new/pytest-shell-utilities-1.9.0/src/pytestshellutils/utils/__init__.py --- old/pytest-shell-utilities-1.8.0/src/pytestshellutils/utils/__init__.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/src/pytestshellutils/utils/__init__.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # import inspect diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/src/pytestshellutils/utils/ports.py new/pytest-shell-utilities-1.9.0/src/pytestshellutils/utils/ports.py --- old/pytest-shell-utilities-1.8.0/src/pytestshellutils/utils/ports.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/src/pytestshellutils/utils/ports.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 """ Ports related utility functions. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/src/pytestshellutils/utils/processes.py new/pytest-shell-utilities-1.9.0/src/pytestshellutils/utils/processes.py --- old/pytest-shell-utilities-1.8.0/src/pytestshellutils/utils/processes.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/src/pytestshellutils/utils/processes.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 """ Process related utilities. @@ -160,10 +160,18 @@ if self.stderr and self.stderr.strip(): message += f"\n >>>>> STDERR >>>>>\n{self.stderr}\n <<<<< STDERR <<<<<" if self.data: - message += "\n Parsed JSON Data:\n" - message += "\n".join(f" {line}" for line in pprint.pformat(self.data).splitlines()) + message += f"\n Parsed JSON Data:\n{self._to_printable_data(self.data)}" return message + "\n" + @staticmethod + def _to_printable_data(data: Dict[str, Any]) -> str: + """ + Convert a data dictionary into a JSON string. + """ + return "\n".join( + f" {line}" for line in json.dumps(data, indent=2, sort_keys=False).splitlines() + ).rstrip() + def collect_child_processes(pid: int) -> List[psutil.Process]: """ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/src/pytestshellutils/utils/socket.py new/pytest-shell-utilities-1.9.0/src/pytestshellutils/utils/socket.py --- old/pytest-shell-utilities-1.8.0/src/pytestshellutils/utils/socket.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/src/pytestshellutils/utils/socket.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # # pylint: disable=wildcard-import,unused-wildcard-import diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/src/pytestshellutils/utils/time.py new/pytest-shell-utilities-1.9.0/src/pytestshellutils/utils/time.py --- old/pytest-shell-utilities-1.8.0/src/pytestshellutils/utils/time.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/src/pytestshellutils/utils/time.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # # pylint: disable=wildcard-import,unused-wildcard-import diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/src/pytestshellutils/version.py new/pytest-shell-utilities-1.9.0/src/pytestshellutils/version.py --- old/pytest-shell-utilities-1.8.0/src/pytestshellutils/version.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/src/pytestshellutils/version.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,3 +1,3 @@ # pylint: skip-file -__version__ = "1.8.0" +__version__ = "1.9.0" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tests/conftest.py new/pytest-shell-utilities-1.9.0/tests/conftest.py --- old/pytest-shell-utilities-1.8.0/tests/conftest.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tests/conftest.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # import functools diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tests/functional/shell/test_daemon.py new/pytest-shell-utilities-1.9.0/tests/functional/shell/test_daemon.py --- old/pytest-shell-utilities-1.8.0/tests/functional/shell/test_daemon.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tests/functional/shell/test_daemon.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # import functools diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tests/functional/shell/test_fixture.py new/pytest-shell-utilities-1.9.0/tests/functional/shell/test_fixture.py --- old/pytest-shell-utilities-1.8.0/tests/functional/shell/test_fixture.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tests/functional/shell/test_fixture.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2022-2023 VMware, Inc. +# Copyright 2022-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # import pathlib diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tests/functional/shell/test_script_subprocess.py new/pytest-shell-utilities-1.9.0/tests/functional/shell/test_script_subprocess.py --- old/pytest-shell-utilities-1.8.0/tests/functional/shell/test_script_subprocess.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tests/functional/shell/test_script_subprocess.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # import os diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tests/functional/shell/test_subprocess.py new/pytest-shell-utilities-1.9.0/tests/functional/shell/test_subprocess.py --- old/pytest-shell-utilities-1.8.0/tests/functional/shell/test_subprocess.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tests/functional/shell/test_subprocess.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2022-2023 VMware, Inc. +# Copyright 2022-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # import os diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tests/functional/test_exceptions.py new/pytest-shell-utilities-1.9.0/tests/functional/test_exceptions.py --- old/pytest-shell-utilities-1.8.0/tests/functional/test_exceptions.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tests/functional/test_exceptions.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2022-2023 VMware, Inc. +# Copyright 2022-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 import textwrap diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tests/support/coverage/sitecustomize.py new/pytest-shell-utilities-1.9.0/tests/support/coverage/sitecustomize.py --- old/pytest-shell-utilities-1.8.0/tests/support/coverage/sitecustomize.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tests/support/coverage/sitecustomize.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # try: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tests/unit/customtypes/test_callback.py new/pytest-shell-utilities-1.9.0/tests/unit/customtypes/test_callback.py --- old/pytest-shell-utilities-1.8.0/tests/unit/customtypes/test_callback.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tests/unit/customtypes/test_callback.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # from typing import Any diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tests/unit/utils/processes/test_processresult.py new/pytest-shell-utilities-1.9.0/tests/unit/utils/processes/test_processresult.py --- old/pytest-shell-utilities-1.8.0/tests/unit/utils/processes/test_processresult.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tests/unit/utils/processes/test_processresult.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,9 +1,10 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 """ Test ``pytestshellutils.utils.processes.ProcessResult``. """ import json as jsonlib +import logging import textwrap import pytest @@ -11,6 +12,8 @@ from pytestshellutils.utils.processes import ProcessResult +log = logging.getLogger(__name__) + @pytest.mark.parametrize("returncode", [None, 1.0, -1.0, "0"]) def test_non_int_returncode_raises_exception(returncode: int) -> None: @@ -127,23 +130,24 @@ stdout = jsonlib.dumps(data) with subtests.test(returncode=returncode, stdout=stdout, stderr=stderr, cmdline=cmdline): ret = ProcessResult(returncode=returncode, stdout=stdout, stderr=stderr, cmdline=cmdline) - expected = textwrap.dedent( - """\ + expected = ( + textwrap.dedent( + f"""\ ProcessResult - Command Line: {!r} - Returncode: {} + Command Line: {cmdline!r} + Returncode: {returncode} Process Output: >>>>> STDOUT >>>>> - {} + {stdout} <<<<< STDOUT <<<<< >>>>> STDERR >>>>> - {} + {stderr} <<<<< STDERR <<<<< Parsed JSON Data: - {!r} - """.format( - cmdline, returncode, stdout, stderr, data + """ ) + + ProcessResult._to_printable_data(data) + + "\n" ) assert str(ret) == expected @@ -154,22 +158,23 @@ ret = ProcessResult( returncode=returncode, stdout=stdout, stderr=stderr, cmdline=cmdline, data_key=data_key ) - expected = textwrap.dedent( - """\ + expected = ( + textwrap.dedent( + f"""\ ProcessResult - Command Line: {!r} - Returncode: {} + Command Line: {cmdline!r} + Returncode: {returncode} Process Output: >>>>> STDOUT >>>>> - {} + {stdout} <<<<< STDOUT <<<<< >>>>> STDERR >>>>> - {} + {stderr} <<<<< STDERR <<<<< Parsed JSON Data: - {!r} - """.format( - cmdline, returncode, stdout, stderr, data[data_key] + """ ) + + ProcessResult._to_printable_data(data[data_key]) + + "\n" ) assert str(ret) == expected diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tests/unit/utils/processes/test_processresult_matcher.py new/pytest-shell-utilities-1.9.0/tests/unit/utils/processes/test_processresult_matcher.py --- old/pytest-shell-utilities-1.8.0/tests/unit/utils/processes/test_processresult_matcher.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tests/unit/utils/processes/test_processresult_matcher.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 """ Test ``pytestshellutils.utils.processes.ProcessResult``. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tests/unit/utils/test_format_callback_to_string.py new/pytest-shell-utilities-1.9.0/tests/unit/utils/test_format_callback_to_string.py --- old/pytest-shell-utilities-1.8.0/tests/unit/utils/test_format_callback_to_string.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tests/unit/utils/test_format_callback_to_string.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # from pytestshellutils.utils import format_callback_to_string diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tests/unit/utils/test_ports.py new/pytest-shell-utilities-1.9.0/tests/unit/utils/test_ports.py --- old/pytest-shell-utilities-1.8.0/tests/unit/utils/test_ports.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tests/unit/utils/test_ports.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2021-2023 VMware, Inc. +# Copyright 2021-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 """ Test the port related utilities. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tests/unit/utils/test_time.py new/pytest-shell-utilities-1.9.0/tests/unit/utils/test_time.py --- old/pytest-shell-utilities-1.8.0/tests/unit/utils/test_time.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tests/unit/utils/test_time.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2022-2023 VMware, Inc. +# Copyright 2022-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # import time diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tools/__init__.py new/pytest-shell-utilities-1.9.0/tools/__init__.py --- old/pytest-shell-utilities-1.8.0/tools/__init__.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tools/__init__.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2023 VMware, Inc. +# Copyright 2023-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 # import ptscripts diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-shell-utilities-1.8.0/tools/pre_commit.py new/pytest-shell-utilities-1.9.0/tools/pre_commit.py --- old/pytest-shell-utilities-1.8.0/tools/pre_commit.py 2023-07-02 22:32:04.000000000 +0200 +++ new/pytest-shell-utilities-1.9.0/tools/pre_commit.py 2024-02-23 11:38:34.000000000 +0100 @@ -1,4 +1,4 @@ -# Copyright 2023 VMware, Inc. +# Copyright 2023-2024 VMware, Inc. # SPDX-License-Identifier: Apache-2.0 """ These commands are used by pre-commit.