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 <[email protected]>
+
+- 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.