From 4f26acf49c2a09c96aaccb779ef4ce33542d0782 Mon Sep 17 00:00:00 2001 From: Pedro Algarvio Date: Sat, 3 Jun 2023 09:26:26 +0100 Subject: [PATCH] Drop Python 3.7 support. Signed-off-by: Pedro Algarvio --- .github/workflows/pre-commit-action.yml | 2 +- .pre-commit-config.yaml | 188 +----- .rstcheck.cfg | 27 - noxfile.py | 42 +- requirements/static/ci/py3.7/cloud.txt | 538 ----------------- requirements/static/ci/py3.7/docs.txt | 214 ------- .../static/ci/py3.7/freebsd-crypto.txt | 10 - requirements/static/ci/py3.7/freebsd.txt | 513 ---------------- requirements/static/ci/py3.7/invoke.txt | 14 - requirements/static/ci/py3.7/lint.txt | 513 ---------------- requirements/static/ci/py3.7/linux-crypto.txt | 10 - requirements/static/ci/py3.7/linux.txt | 562 ------------------ .../static/ci/py3.7/windows-crypto.txt | 10 - requirements/static/ci/py3.7/windows.txt | 449 -------------- requirements/static/pkg/py3.7/freebsd.txt | 107 ---- requirements/static/pkg/py3.7/linux.txt | 109 ---- requirements/static/pkg/py3.7/windows.txt | 148 ----- salt/_logging/handlers.py | 114 +--- salt/utils/idem.py | 3 - salt/utils/templates.py | 57 +- setup.py | 12 +- tests/conftest.py | 33 +- tests/pytests/unit/modules/test_genesis.py | 10 +- tests/pytests/unit/utils/test_stringutils.py | 34 +- 24 files changed, 99 insertions(+), 3620 deletions(-) delete mode 100644 .rstcheck.cfg delete mode 100644 requirements/static/ci/py3.7/cloud.txt delete mode 100644 requirements/static/ci/py3.7/docs.txt delete mode 100644 requirements/static/ci/py3.7/freebsd-crypto.txt delete mode 100644 requirements/static/ci/py3.7/freebsd.txt delete mode 100644 requirements/static/ci/py3.7/invoke.txt delete mode 100644 requirements/static/ci/py3.7/lint.txt delete mode 100644 requirements/static/ci/py3.7/linux-crypto.txt delete mode 100644 requirements/static/ci/py3.7/linux.txt delete mode 100644 requirements/static/ci/py3.7/windows-crypto.txt delete mode 100644 requirements/static/ci/py3.7/windows.txt delete mode 100644 requirements/static/pkg/py3.7/freebsd.txt delete mode 100644 requirements/static/pkg/py3.7/linux.txt delete mode 100644 requirements/static/pkg/py3.7/windows.txt diff --git a/.github/workflows/pre-commit-action.yml b/.github/workflows/pre-commit-action.yml index 41a3091619f3..d1e7df9d89db 100644 --- a/.github/workflows/pre-commit-action.yml +++ b/.github/workflows/pre-commit-action.yml @@ -50,7 +50,7 @@ jobs: - name: Check ALL Files On Branch if: github.event_name != 'pull_request' env: - SKIP: lint-salt,lint-tests,remove-import-headers,rstcheck + SKIP: lint-salt,lint-tests,remove-import-headers,pyupgrade run: | pre-commit run --show-diff-on-failure --color=always --all-files diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index d8df181635d5..e18c544f51b0 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -94,19 +94,6 @@ repos: hooks: # ----- Packaging Requirements ------------------------------------------------------------------------------------> - - id: pip-tools-compile - alias: compile-pkg-linux-3.7-zmq-requirements - name: Linux Packaging Py3.7 ZeroMQ Requirements - files: ^requirements/((base|zeromq|crypto)\.txt|static/pkg/(linux\.in|py3\.7/linux\.txt))$ - pass_filenames: false - args: - - -v - - --py-version=3.7 - - --platform=linux - - --include=requirements/base.txt - - --include=requirements/zeromq.txt - - requirements/static/pkg/linux.in - - id: pip-tools-compile alias: compile-pkg-linux-3.8-zmq-requirements name: Linux Packaging Py3.8 ZeroMQ Requirements @@ -159,19 +146,6 @@ repos: - --include=requirements/zeromq.txt - requirements/static/pkg/linux.in - - id: pip-tools-compile - alias: compile-pkg-freebsd-3.7-zmq-requirements - name: FreeBSD Packaging Py3.7 ZeroMQ Requirements - files: ^requirements/((base|zeromq|crypto)\.txt|static/pkg/(freebsd\.in|py3\.7/freebsd\.txt))$ - pass_filenames: false - args: - - -v - - --py-version=3.7 - - --platform=freebsd - - --include=requirements/base.txt - - --include=requirements/zeromq.txt - - requirements/static/pkg/freebsd.in - - id: pip-tools-compile alias: compile-pkg-freebsd-3.8-zmq-requirements name: FreeBSD Packaging Py3.8 ZeroMQ Requirements @@ -260,18 +234,6 @@ repos: - --include=requirements/darwin.txt - requirements/static/pkg/darwin.in - - id: pip-tools-compile - alias: compile-pkg-windows-3.7-zmq-requirements - name: Windows Packaging Py3.7 ZeroMQ Requirements - files: ^requirements/((base|zeromq|crypto|windows)\.txt|static/pkg/(windows\.in|py3\.7/windows\.txt))$ - pass_filenames: false - args: - - -v - - --py-version=3.7 - - --platform=windows - - --include=requirements/windows.txt - - requirements/static/pkg/windows.in - - id: pip-tools-compile alias: compile-pkg-windows-3.8-zmq-requirements name: Windows Packaging Py3.8 ZeroMQ Requirements @@ -323,23 +285,6 @@ repos: # <---- Packaging Requirements ------------------------------------------------------------------------------------- # ----- CI Requirements -------------------------------------------------------------------------------------------> - - id: pip-tools-compile - alias: compile-ci-linux-3.7-zmq-requirements - name: Linux CI Py3.7 ZeroMQ Requirements - files: ^requirements/((base|zeromq|pytest)\.txt|static/((ci|pkg)/(linux\.in|common\.in)|pkg/py3\.7/linux\.txt))$ - pass_filenames: false - args: - - -v - - --py-version=3.7 - - --platform=linux - - --include=requirements/base.txt - - --include=requirements/zeromq.txt - - --include=requirements/pytest.txt - - --include=requirements/static/pkg/linux.in - - --include=requirements/static/ci/common.in - - --pip-args=--constraint=requirements/static/pkg/py{py_version}/linux.txt - - requirements/static/ci/linux.in - - id: pip-tools-compile alias: compile-ci-linux-3.8-zmq-requirements name: Linux CI Py3.8 ZeroMQ Requirements @@ -408,19 +353,6 @@ repos: - --pip-args=--constraint=requirements/static/pkg/py{py_version}/linux.txt - requirements/static/ci/linux.in - - id: pip-tools-compile - alias: compile-ci-linux-crypto-3.7-requirements - name: Linux CI Py3.7 Crypto Requirements - files: ^requirements/(crypto\.txt|static/ci/(crypto\.in|py3\.7/linux-crypto\.txt))$ - pass_filenames: false - args: - - -v - - --py-version=3.7 - - --platform=linux - - --out-prefix=linux - - --pip-args=--constraint=requirements/static/pkg/py{py_version}/linux.txt - - requirements/static/ci/crypto.in - - id: pip-tools-compile alias: compile-ci-linux-crypto-3.8-requirements name: Linux CI Py3.8 Crypto Requirements @@ -475,23 +407,6 @@ repos: - --pip-args=--constraint=requirements/static/ci/py{py_version}/linux.txt - requirements/static/ci/crypto.in - - id: pip-tools-compile - alias: compile-ci-freebsd-3.7-zmq-requirements - name: FreeBSD CI Py3.7 ZeroMQ Requirements - files: ^requirements/((base|zeromq|pytest)\.txt|static/((ci|pkg)/(freebsd|common)\.in|pkg/py3\.7/freebsd\.txt))$ - pass_filenames: false - args: - - -v - - --py-version=3.7 - - --platform=freebsd - - --include=requirements/base.txt - - --include=requirements/zeromq.txt - - --include=requirements/pytest.txt - - --include=requirements/static/pkg/freebsd.in - - --include=requirements/static/ci/common.in - - --pip-args=--constraint=requirements/static/pkg/py{py_version}/freebsd.txt - - requirements/static/ci/freebsd.in - - id: pip-tools-compile alias: compile-ci-freebsd-3.8-zmq-requirements name: FreeBSD CI Py3.8 ZeroMQ Requirements @@ -560,19 +475,6 @@ repos: - --pip-args=--constraint=requirements/static/pkg/py{py_version}/freebsd.txt - requirements/static/ci/freebsd.in - - id: pip-tools-compile - alias: compile-ci-freebsd-crypto-3.7-requirements - name: FreeBSD CI Py3.7 Crypto Requirements - files: ^requirements/(crypto\.txt|static/ci/(crypto\.in|py3\.7/freebsd-crypto\.txt))$ - pass_filenames: false - args: - - -v - - --py-version=3.7 - - --platform=freebsd - - --out-prefix=freebsd - - --pip-args=--constraint=requirements/static/ci/py{py_version}/freebsd.txt - - requirements/static/ci/crypto.in - - id: pip-tools-compile alias: compile-ci-freebsd-crypto-3.8-requirements name: FreeBSD CI Py3.8 Crypto Requirements @@ -714,22 +616,6 @@ repos: - --pip-args=--constraint=requirements/static/ci/py{py_version}/darwin.txt - requirements/static/ci/crypto.in - - id: pip-tools-compile - alias: compile-ci-windows-3.7-zmq-requirements - name: Windows CI Py3.7 ZeroMQ Requirements - files: requirements/((base|zeromq|pytest)\.txt|static/((ci|pkg)/(windows|common)\.in|pkg/py3\.7/windows\.txt))$ - pass_filenames: false - args: - - -v - - --py-version=3.7 - - --platform=windows - - --include=requirements/windows.txt - - --include=requirements/pytest.txt - - --include=requirements/static/pkg/windows.in - - --include=requirements/static/ci/common.in - - --pip-args=--constraint=requirements/static/pkg/py{py_version}/windows.txt - - requirements/static/ci/windows.in - - id: pip-tools-compile alias: compile-ci-windows-3.8-zmq-requirements name: Windows CI Py3.8 ZeroMQ Requirements @@ -794,19 +680,6 @@ repos: - --pip-args=--constraint=requirements/static/pkg/py{py_version}/windows.txt - requirements/static/ci/windows.in - - id: pip-tools-compile - alias: compile-ci-windows-crypto-3.7-requirements - name: Windows CI Py3.7 Crypto Requirements - files: ^requirements/(crypto\.txt|static/ci/(crypto\.in|py3\.7/windows-crypto\.txt))$ - pass_filenames: false - args: - - -v - - --py-version=3.7 - - --platform=windows - - --out-prefix=windows - - --pip-args=--constraint=requirements/static/ci/py{py_version}/windows.txt - - requirements/static/ci/crypto.in - - id: pip-tools-compile alias: compile-ci-windows-crypto-3.8-requirements name: Windows CI Py3.8 Crypto Requirements @@ -863,22 +736,6 @@ repos: # ----- Cloud CI Requirements -------------------------------------------------------------------------------------> - - id: pip-tools-compile - alias: compile-ci-cloud-3.7-requirements - name: Cloud CI Py3.7 Requirements - files: ^requirements/((base|zeromq|pytest)\.txt|static/(pkg/linux\.in|ci/((cloud|common)\.in|py3\.7/cloud\.txt)))$ - pass_filenames: false - args: - - -v - - --py-version=3.7 - - --include=requirements/base.txt - - --include=requirements/zeromq.txt - - --include=requirements/pytest.txt - - --include=requirements/static/pkg/linux.in - - --include=requirements/static/ci/common.in - - --pip-args=--constraint=requirements/static/ci/py{py_version}/linux.txt - - requirements/static/ci/cloud.in - - id: pip-tools-compile alias: compile-ci-cloud-3.8-requirements name: Cloud CI Py3.8 Requirements @@ -929,19 +786,6 @@ repos: # <---- Cloud CI Requirements -------------------------------------------------------------------------------------- # ----- Doc CI Requirements ---------------------------------------------------------------------------------------> - - id: pip-tools-compile - alias: compile-doc-requirements - name: Docs CI Py3.7 Requirements - files: ^requirements/((base|zeromq|pytest)\.txt|static/ci/(docs|common|linux)\.in|static/pkg/linux\.in|static/pkg/.*/linux\.txt)$ - pass_filenames: false - args: - - -v - - --py-version=3.7 - - --platform=linux - - --include=requirements/base.txt - - --include=requirements/zeromq.txt - - requirements/static/ci/docs.in - - id: pip-tools-compile alias: compile-doc-requirements name: Docs CI Py3.8 Requirements @@ -984,23 +828,6 @@ repos: # <---- Doc CI Requirements ---------------------------------------------------------------------------------------- # ----- Lint CI Requirements --------------------------------------------------------------------------------------> - - id: pip-tools-compile - alias: compile-ci-lint-3.7-requirements - name: Lint CI Py3.7 Requirements - files: ^requirements/((base|zeromq)\.txt|static/(pkg/linux\.in|ci/(linux\.in|common\.in|lint\.in|py3\.7/linux\.txt)))$ - pass_filenames: false - args: - - -v - - --py-version=3.7 - - --platform=linux - - --include=requirements/base.txt - - --include=requirements/zeromq.txt - - --include=requirements/static/pkg/linux.in - - --include=requirements/static/ci/linux.in - - --include=requirements/static/ci/common.in - - --pip-args=--constraint=requirements/static/ci/py{py_version}/linux.txt - - requirements/static/ci/lint.in - - id: pip-tools-compile alias: compile-ci-lint-3.8-requirements name: Lint CI Py3.8 Requirements @@ -1093,17 +920,6 @@ repos: # <---- Changelog -------------------------------------------------------------------------------------------------- # ----- Invoke ----------------------------------------------------------------------------------------------------> - - id: pip-tools-compile - alias: compile-ci-invoke-3.7-requirements - name: Linux CI Py3.7 Invoke Requirements - files: ^requirements/static/ci/(invoke\.in|py3.7/(invoke|linux)\.txt)$ - pass_filenames: false - args: - - -v - - --py-version=3.7 - - --pip-args=--constraint=requirements/static/ci/py{py_version}/linux.txt - - requirements/static/ci/invoke.in - - id: pip-tools-compile alias: compile-ci-invoke-3.8-requirements name: Linux CI Py3.8 Invoke Requirements @@ -1197,8 +1013,8 @@ repos: rev: v2.37.2 hooks: - id: pyupgrade - name: Drop six usage and Py2 support - args: [--py3-plus, --keep-mock] + name: Upgrade code for Py3.8+ + args: [--py38-plus, --keep-mock] exclude: > (?x)^( salt/client/ssh/ssh_py_shim.py diff --git a/.rstcheck.cfg b/.rstcheck.cfg deleted file mode 100644 index a2c5731b9e14..000000000000 --- a/.rstcheck.cfg +++ /dev/null @@ -1,27 +0,0 @@ -[rstcheck] -ignore_directives= - automodule, - autoclass, - autofunction, - conf_proxy, - conf_log, - conf_master, - conf_minion, - releasestree, - jinja_ref, - salt:event -ignore_roles= - conf_master, - conf_minion, - conf_proxy, - conf_log, - formula_url, - issue, - pull, - blob, - jinja_ref -ignore_substitutions= - saltrepo, - repo_primary_branch, - windownload, - osxdownloadpy3 diff --git a/noxfile.py b/noxfile.py index 9a7afa93bdc3..30687acf3499 100644 --- a/noxfile.py +++ b/noxfile.py @@ -104,7 +104,7 @@ def session_warn(session, message): try: session.warn(message) except AttributeError: - session.log("WARNING: {}".format(message)) + session.log(f"WARNING: {message}") def session_run_always(session, *command, **kwargs): @@ -129,15 +129,15 @@ def session_run_always(session, *command, **kwargs): def find_session_runner(session, name, python_version, onedir=False, **kwargs): if onedir: - name += "-onedir-{}".format(ONEDIR_PYTHON_PATH) + name += f"-onedir-{ONEDIR_PYTHON_PATH}" else: - name += "-{}".format(python_version) + name += f"-{python_version}" for s, _ in session._runner.manifest.list_all_sessions(): if name not in s.signatures: continue for signature in s.signatures: for key, value in kwargs.items(): - param = "{}={!r}".format(key, value) + param = f"{key}={value!r}" if param not in signature: break else: @@ -185,10 +185,8 @@ def _get_session_python_version_info(session): def _get_pydir(session): version_info = _get_session_python_version_info(session) - if version_info < (3, 5): - session.error("Only Python >= 3.5 is supported") - if IS_WINDOWS and version_info < (3, 6): - session.error("Only Python >= 3.6 is supported on Windows") + if version_info < (3, 8): + session.error("Only Python >= 3.8 is supported") return "py{}.{}".format(*version_info) @@ -203,7 +201,7 @@ def _get_pip_requirements_file(session, transport, crypto=None, requirements_typ "static", requirements_type, pydir, - "{}-windows.txt".format(transport), + f"{transport}-windows.txt", ) if os.path.exists(_requirements_file): return _requirements_file @@ -217,7 +215,7 @@ def _get_pip_requirements_file(session, transport, crypto=None, requirements_typ ) if os.path.exists(_requirements_file): return _requirements_file - session.error("Could not find a windows requirements file for {}".format(pydir)) + session.error(f"Could not find a windows requirements file for {pydir}") elif IS_DARWIN: if crypto is None: _requirements_file = os.path.join( @@ -225,7 +223,7 @@ def _get_pip_requirements_file(session, transport, crypto=None, requirements_typ "static", requirements_type, pydir, - "{}-darwin.txt".format(transport), + f"{transport}-darwin.txt", ) if os.path.exists(_requirements_file): return _requirements_file @@ -239,7 +237,7 @@ def _get_pip_requirements_file(session, transport, crypto=None, requirements_typ ) if os.path.exists(_requirements_file): return _requirements_file - session.error("Could not find a darwin requirements file for {}".format(pydir)) + session.error(f"Could not find a darwin requirements file for {pydir}") elif IS_FREEBSD: if crypto is None: _requirements_file = os.path.join( @@ -247,7 +245,7 @@ def _get_pip_requirements_file(session, transport, crypto=None, requirements_typ "static", requirements_type, pydir, - "{}-freebsd.txt".format(transport), + f"{transport}-freebsd.txt", ) if os.path.exists(_requirements_file): return _requirements_file @@ -261,7 +259,7 @@ def _get_pip_requirements_file(session, transport, crypto=None, requirements_typ ) if os.path.exists(_requirements_file): return _requirements_file - session.error("Could not find a freebsd requirements file for {}".format(pydir)) + session.error(f"Could not find a freebsd requirements file for {pydir}") else: if crypto is None: _requirements_file = os.path.join( @@ -269,7 +267,7 @@ def _get_pip_requirements_file(session, transport, crypto=None, requirements_typ "static", requirements_type, pydir, - "{}-linux.txt".format(transport), + f"{transport}-linux.txt", ) if os.path.exists(_requirements_file): return _requirements_file @@ -283,7 +281,7 @@ def _get_pip_requirements_file(session, transport, crypto=None, requirements_typ ) if os.path.exists(_requirements_file): return _requirements_file - session.error("Could not find a linux requirements file for {}".format(pydir)) + session.error(f"Could not find a linux requirements file for {pydir}") def _upgrade_pip_setuptools_and_wheel(session, upgrade=True, onedir=False): @@ -571,7 +569,7 @@ def test_parametrized(session, coverage, transport, crypto): session.install(*install_command, silent=PIP_INSTALL_SILENT) cmd_args = [ - "--transport={}".format(transport), + f"--transport={transport}", ] + session.posargs _pytest(session, coverage=coverage, cmd_args=cmd_args) @@ -1016,7 +1014,7 @@ def _pytest(session, coverage, cmd_args, env=None): if arg == "--log-file" or arg.startswith("--log-file="): break else: - args.append("--log-file={}".format(RUNTESTS_LOGFILE)) + args.append(f"--log-file={RUNTESTS_LOGFILE}") args.extend(cmd_args) if PRINT_SYSTEM_INFO and "--sysinfo" not in args: @@ -1358,7 +1356,7 @@ def _lint( session.run("pylint", "--version") pylint_report_path = os.environ.get("PYLINT_REPORT") - cmd_args = ["pylint", "--rcfile={}".format(rcfile)] + list(flags) + list(paths) + cmd_args = ["pylint", f"--rcfile={rcfile}"] + list(flags) + list(paths) cmd_kwargs = {"env": {"PYTHONUNBUFFERED": "1"}} @@ -1433,8 +1431,8 @@ def lint(session): """ Run PyLint against Salt and it's test suite. Set PYLINT_REPORT to a path to capture output. """ - session.notify("lint-salt-{}".format(session.python)) - session.notify("lint-tests-{}".format(session.python)) + session.notify(f"lint-salt-{session.python}") + session.notify(f"lint-tests-{session.python}") @nox.session(python="3", name="lint-salt") @@ -1498,7 +1496,7 @@ def docs(session, compress, update, clean): """ Build Salt's Documentation """ - session.notify("docs-html-{}(compress={})".format(session.python, compress)) + session.notify(f"docs-html-{session.python}(compress={compress})") session.notify( find_session_runner( session, diff --git a/requirements/static/ci/py3.7/cloud.txt b/requirements/static/ci/py3.7/cloud.txt deleted file mode 100644 index 956b961aa19a..000000000000 --- a/requirements/static/ci/py3.7/cloud.txt +++ /dev/null @@ -1,538 +0,0 @@ -# -# This file is autogenerated by pip-compile -# To update, run: -# -# pip-compile --output-file=requirements/static/ci/py3.7/cloud.txt --pip-args='--constraint=requirements/static/ci/py3.7/linux.txt' requirements/base.txt requirements/pytest.txt requirements/static/ci/cloud.in requirements/static/ci/common.in requirements/static/pkg/linux.in requirements/zeromq.txt -# -aiohttp==3.8.1 - # via etcd3-py -aiosignal==1.2.0 - # via aiohttp -apache-libcloud==2.5.0 ; sys_platform != "win32" - # via - # -r requirements/static/ci/cloud.in - # -r requirements/static/ci/common.in -asn1crypto==1.4.0 - # via - # certvalidator - # oscrypto -async-timeout==4.0.2 - # via aiohttp -asynctest==0.13.0 - # via aiohttp -attrs==21.2.0 - # via - # aiohttp - # jsonschema - # pytest - # pytest-salt-factories - # pytest-shell-utilities - # pytest-skip-markers - # pytest-system-statistics -backports.entry-points-selectable==1.1.0 - # via virtualenv -bcrypt==3.2.0 - # via - # paramiko - # passlib -boto3==1.21.46 ; python_version >= "3.6" - # via - # -r requirements/static/ci/common.in - # moto -boto==2.49.0 - # via -r requirements/static/ci/common.in -botocore==1.24.46 - # via - # boto3 - # moto - # s3transfer -cachetools==4.2.2 - # via google-auth -cassandra-driver==3.25.0 - # via -r requirements/static/ci/common.in -certifi==2022.12.7 - # via - # -r requirements/static/ci/common.in - # kubernetes - # requests -certvalidator==0.11.1 - # via vcert -cffi==1.14.6 - # via - # -r requirements/static/ci/common.in - # bcrypt - # cryptography - # napalm - # pynacl -charset-normalizer==2.0.12 - # via - # aiohttp - # requests -cheetah3==3.2.6.post1 - # via -r requirements/static/ci/common.in -cheroot==8.5.2 - # via cherrypy -cherrypy==18.6.1 - # via - # -r requirements/static/ci/common.in - # -r requirements/static/pkg/linux.in -ciscoconfparse==1.5.46 - # via napalm -click==8.0.1 - # via geomet -clustershell==1.8.3 - # via -r requirements/static/ci/common.in -colorama==0.4.4 - # via ciscoconfparse -contextvars==2.4 - # via -r requirements/base.txt -croniter==1.0.15 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -cryptography==39.0.2 - # via - # -r requirements/static/pkg/linux.in - # etcd3-py - # moto - # paramiko - # pyopenssl - # pyspnego - # requests-ntlm - # smbprotocol - # vcert -distlib==0.3.3 - # via virtualenv -distro==1.6.0 - # via - # -r requirements/base.txt - # pytest-skip-markers -dnspython==2.1.0 - # via - # -r requirements/static/ci/common.in - # ciscoconfparse - # python-etcd -docker==5.0.2 - # via - # -r requirements/static/ci/common.in - # pytest-salt-factories -etcd3-py==0.1.6 ; python_version >= "3.6" - # via -r requirements/static/ci/common.in -exceptiongroup==1.0.4 - # via pytest -filelock==3.0.12 - # via virtualenv -flaky==3.7.0 - # via -r requirements/pytest.txt -frozenlist==1.3.0 - # via - # aiohttp - # aiosignal -future==0.18.3 - # via - # napalm - # textfsm -genshi==0.7.5 - # via -r requirements/static/ci/common.in -geomet==0.2.1.post1 - # via cassandra-driver -gitdb==4.0.7 - # via gitpython -gitpython==3.1.30 ; python_version >= "3.7" - # via -r requirements/static/ci/common.in -google-auth==2.1.0 - # via kubernetes -idna==2.8 - # via - # etcd3-py - # requests - # yarl -immutables==0.16 - # via contextvars -importlib-metadata==4.8.1 - # via - # -r requirements/static/pkg/linux.in - # backports.entry-points-selectable - # click - # jsonschema - # mako - # moto - # pluggy - # pytest - # virtualenv -iniconfig==1.1.1 - # via pytest -ipaddress==1.0.23 - # via kubernetes -jaraco.classes==3.2.1 - # via jaraco.collections -jaraco.collections==3.4.0 - # via cherrypy -jaraco.functools==3.3.0 - # via - # cheroot - # jaraco.text - # tempora -jaraco.text==3.5.1 - # via jaraco.collections -jinja2==3.1.2 - # via - # -r requirements/base.txt - # junos-eznc - # moto - # napalm -jmespath==0.10.0 - # via - # -r requirements/base.txt - # -r requirements/static/ci/common.in - # boto3 - # botocore -jsonschema==3.2.0 - # via -r requirements/static/ci/common.in -junos-eznc==2.4.0 ; sys_platform != "win32" and python_version <= "3.10" - # via - # -r requirements/static/ci/common.in - # napalm -jxmlease==1.0.3 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -kazoo==2.8.0 ; sys_platform != "win32" and sys_platform != "darwin" - # via -r requirements/static/ci/common.in -keyring==5.7.1 - # via -r requirements/static/ci/common.in -kubernetes==3.0.0 - # via -r requirements/static/ci/common.in -libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin" - # via -r requirements/static/ci/common.in -loguru==0.6.0 - # via ciscoconfparse -looseversion==1.0.2 - # via -r requirements/base.txt -lxml==4.9.1 - # via - # junos-eznc - # napalm - # ncclient -mako==1.2.2 - # via -r requirements/static/ci/common.in -markupsafe==2.1.2 - # via - # -r requirements/base.txt - # jinja2 - # mako - # moto - # werkzeug -mock==4.0.3 - # via -r requirements/pytest.txt -more-itertools==8.8.0 - # via - # cheroot - # cherrypy - # jaraco.classes - # jaraco.functools -moto==3.0.1 ; python_version >= "3.6" - # via -r requirements/static/ci/common.in -msgpack==1.0.2 - # via - # -r requirements/base.txt - # pytest-salt-factories -multidict==6.0.2 - # via - # aiohttp - # yarl -napalm==3.3.1 ; sys_platform != "win32" and python_version > "3.6" and python_version < "3.10" - # via -r requirements/static/ci/common.in -ncclient==0.6.12 - # via - # junos-eznc - # napalm -netaddr==0.7.19 - # via - # -r requirements/static/ci/cloud.in - # junos-eznc - # napalm - # pyeapi -netmiko==3.4.0 - # via napalm -ntc-templates==2.3.2 - # via - # junos-eznc - # netmiko -ntlm-auth==1.3.0 - # via requests-ntlm -oscrypto==1.2.1 - # via certvalidator -packaging==21.3 - # via - # -r requirements/base.txt - # pytest -paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin" - # via - # -r requirements/static/ci/common.in - # junos-eznc - # napalm - # ncclient - # netmiko - # scp -passlib[bcrypt]==1.7.4 - # via - # -r requirements/static/ci/common.in - # ciscoconfparse -platformdirs==2.3.0 - # via virtualenv -pluggy==1.0.0 - # via pytest -portend==2.7.1 - # via cherrypy -profitbricks==4.1.3 - # via -r requirements/static/ci/cloud.in -psutil==5.8.0 - # via - # -r requirements/base.txt - # pytest-salt-factories - # pytest-shell-utilities - # pytest-system-statistics -pyasn1-modules==0.2.8 - # via google-auth -pyasn1==0.4.8 - # via - # pyasn1-modules - # rsa -pycparser==2.19 - # via cffi -pycryptodomex==3.10.1 - # via -r requirements/crypto.txt -pyeapi==0.8.4 - # via napalm -pyinotify==0.9.6 ; sys_platform != "win32" and sys_platform != "darwin" and platform_system != "openbsd" - # via -r requirements/static/ci/common.in -pynacl==1.4.0 - # via paramiko -pyopenssl==23.0.0 - # via - # -r requirements/static/pkg/linux.in - # etcd3-py -pyparsing==3.0.9 - # via - # junos-eznc - # packaging -pypsexec==0.1.0 - # via -r requirements/static/ci/cloud.in -pyrsistent==0.18.0 - # via jsonschema -pyserial==3.5 - # via - # junos-eznc - # netmiko -pyspnego==0.8.0 - # via - # -r requirements/static/ci/cloud.in - # smbprotocol -pytest-custom-exit-code==0.3.0 - # via -r requirements/pytest.txt -pytest-helpers-namespace==2021.4.29 - # via - # -r requirements/pytest.txt - # pytest-salt-factories - # pytest-shell-utilities -pytest-httpserver==1.0.4 - # via -r requirements/pytest.txt -pytest-salt-factories[docker]==1.0.0rc21 ; sys_platform != "win32" - # via -r requirements/pytest.txt -pytest-shell-utilities==1.6.0 - # via pytest-salt-factories -pytest-skip-markers==1.2.0 - # via - # pytest-salt-factories - # pytest-shell-utilities - # pytest-system-statistics -pytest-subtests==0.5.0 - # via -r requirements/pytest.txt -pytest-system-statistics==1.0.2 - # via pytest-salt-factories -pytest-tempdir==2019.10.12 - # via - # -r requirements/pytest.txt - # pytest-salt-factories -pytest-timeout==2.0.2 - # via -r requirements/pytest.txt -pytest==7.2.0 ; python_version > "3.6" - # via - # -r requirements/pytest.txt - # pytest-custom-exit-code - # pytest-helpers-namespace - # pytest-salt-factories - # pytest-shell-utilities - # pytest-skip-markers - # pytest-subtests - # pytest-system-statistics - # pytest-tempdir - # pytest-timeout -python-dateutil==2.8.2 - # via - # -r requirements/static/pkg/linux.in - # botocore - # croniter - # kubernetes - # moto - # vcert -python-etcd==0.4.5 - # via -r requirements/static/ci/common.in -python-gnupg==0.4.8 - # via -r requirements/static/pkg/linux.in -pytz==2022.1 - # via - # moto - # tempora -pyvmomi==7.0.2 - # via -r requirements/static/ci/common.in -pywinrm==0.3.0 - # via -r requirements/static/ci/cloud.in -pyyaml==5.4.1 - # via - # -r requirements/base.txt - # clustershell - # junos-eznc - # kubernetes - # napalm - # yamlordereddictloader -pyzmq==23.2.0 ; python_version < "3.11" - # via - # -r requirements/zeromq.txt - # pytest-salt-factories -requests-ntlm==1.1.0 - # via pywinrm -requests==2.31.0 - # via - # -r requirements/base.txt - # -r requirements/static/ci/common.in - # apache-libcloud - # docker - # etcd3-py - # kubernetes - # moto - # napalm - # profitbricks - # pyvmomi - # pywinrm - # requests-ntlm - # responses - # vcert -responses==0.14.0 - # via moto -rfc3987==1.3.8 - # via -r requirements/static/ci/common.in -rpm-vercmp==0.1.2 - # via -r requirements/static/pkg/linux.in -rsa==4.7.2 - # via google-auth -s3transfer==0.5.0 - # via boto3 -scp==0.14.1 - # via - # junos-eznc - # napalm - # netmiko -semantic-version==2.9.0 - # via etcd3-py -setproctitle==1.3.2 - # via -r requirements/static/pkg/linux.in -six==1.16.0 - # via - # bcrypt - # cassandra-driver - # cheroot - # etcd3-py - # genshi - # geomet - # jsonschema - # junos-eznc - # kazoo - # kubernetes - # ncclient - # paramiko - # profitbricks - # pynacl - # pypsexec - # python-dateutil - # pyvmomi - # pywinrm - # responses - # textfsm - # transitions - # vcert - # virtualenv - # websocket-client -smbprotocol==1.10.1 - # via - # -r requirements/static/ci/cloud.in - # pypsexec -smmap==4.0.0 - # via gitdb -sqlparse==0.4.4 - # via -r requirements/static/ci/common.in -strict-rfc3339==0.7 - # via -r requirements/static/ci/common.in -tempora==4.1.1 - # via portend -tenacity==8.0.1 - # via netmiko -textfsm==1.1.2 - # via - # napalm - # ntc-templates -timelib==0.2.5 - # via -r requirements/static/pkg/linux.in -toml==0.10.2 - # via -r requirements/static/ci/common.in -tomli==2.0.1 - # via pytest -tornado==6.2.0 ; python_version < "3.8" - # via -r requirements/base.txt -transitions==0.8.9 - # via junos-eznc -typing-extensions==3.10.0.0 - # via - # aiohttp - # async-timeout - # gitpython - # immutables - # importlib-metadata - # pytest-shell-utilities - # pytest-system-statistics - # yarl -urllib3==1.26.6 - # via - # botocore - # kubernetes - # python-etcd - # requests - # responses -vcert==0.7.4 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -virtualenv==20.8.0 - # via - # -r requirements/static/ci/common.in - # pytest-salt-factories -watchdog==2.1.5 - # via -r requirements/static/ci/common.in -websocket-client==0.40.0 - # via - # docker - # kubernetes -werkzeug==2.2.3 - # via - # moto - # pytest-httpserver -xmltodict==0.12.0 - # via - # moto - # pywinrm -yamlordereddictloader==0.4.0 - # via junos-eznc -yarl==1.7.2 - # via aiohttp -zc.lockfile==2.0 - # via cherrypy -zipp==3.5.0 - # via importlib-metadata - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/requirements/static/ci/py3.7/docs.txt b/requirements/static/ci/py3.7/docs.txt deleted file mode 100644 index 3e1427f51497..000000000000 --- a/requirements/static/ci/py3.7/docs.txt +++ /dev/null @@ -1,214 +0,0 @@ -# -# This file is autogenerated by pip-compile -# To update, run: -# -# pip-compile --output-file=requirements/static/ci/py3.7/docs.txt requirements/base.txt requirements/static/ci/docs.in requirements/zeromq.txt -# -alabaster==0.7.12 - # via sphinx -babel==2.9.1 - # via sphinx -certifi==2022.12.7 - # via - # -c requirements/static/ci/py3.7/linux.txt - # requests -charset-normalizer==2.0.12 - # via - # -c requirements/static/ci/py3.7/linux.txt - # requests -cheroot==8.5.2 - # via - # -c requirements/static/ci/py3.7/linux.txt - # cherrypy -cherrypy==18.6.1 - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/static/ci/docs.in -contextvars==2.4 - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/base.txt -distro==1.5.0 - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/base.txt -docutils==0.16 - # via sphinx -idna==2.8 - # via - # -c requirements/static/ci/py3.7/linux.txt - # requests -imagesize==1.2.0 - # via sphinx -immutables==0.15 - # via - # -c requirements/static/ci/py3.7/linux.txt - # contextvars -importlib-metadata==4.6.4 - # via - # -c requirements/static/ci/py3.7/linux.txt - # sphinxcontrib-spelling -jaraco.classes==3.2.1 - # via - # -c requirements/static/ci/py3.7/linux.txt - # jaraco.collections -jaraco.collections==3.4.0 - # via - # -c requirements/static/ci/py3.7/linux.txt - # cherrypy -jaraco.functools==2.0 - # via - # -c requirements/static/ci/py3.7/linux.txt - # cheroot - # jaraco.text - # tempora -jaraco.text==3.5.1 - # via - # -c requirements/static/ci/py3.7/linux.txt - # jaraco.collections -jinja2==3.1.2 - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/base.txt - # myst-docutils - # sphinx -jmespath==1.0.1 - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/base.txt -linkify-it-py==1.0.3 - # via myst-docutils -looseversion==1.0.2 - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/base.txt -markdown-it-py==2.2.0 - # via - # mdit-py-plugins - # myst-docutils -markupsafe==2.1.2 - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/base.txt - # jinja2 -mdit-py-plugins==0.3.3 - # via myst-docutils -mdurl==0.1.2 - # via markdown-it-py -more-itertools==5.0.0 - # via - # -c requirements/static/ci/py3.7/linux.txt - # cheroot - # cherrypy - # jaraco.classes - # jaraco.functools -msgpack==1.0.2 - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/base.txt -myst-docutils[linkify]==0.18.1 - # via -r requirements/static/ci/docs.in -packaging==21.3 - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/base.txt - # sphinx -portend==2.4 - # via - # -c requirements/static/ci/py3.7/linux.txt - # cherrypy -psutil==5.8.0 - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/base.txt -pycryptodomex==3.9.8 - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/crypto.txt -pyenchant==3.2.2 - # via sphinxcontrib-spelling -pygments==2.8.1 - # via sphinx -pyparsing==3.0.9 - # via - # -c requirements/static/ci/py3.7/linux.txt - # packaging -pytz==2022.1 - # via - # -c requirements/static/ci/py3.7/linux.txt - # babel - # tempora -pyyaml==5.4.1 - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/base.txt - # myst-docutils -pyzmq==23.2.0 ; python_version < "3.11" - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/zeromq.txt -requests==2.31.0 - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/base.txt - # sphinx -six==1.16.0 - # via - # -c requirements/static/ci/py3.7/linux.txt - # cheroot - # more-itertools - # sphinxcontrib.httpdomain -snowballstemmer==2.1.0 - # via sphinx -sphinx==3.5.2 ; python_version < "3.9" - # via - # -r requirements/static/ci/docs.in - # sphinxcontrib-spelling - # sphinxcontrib.httpdomain -sphinxcontrib-applehelp==1.0.2 - # via sphinx -sphinxcontrib-devhelp==1.0.2 - # via sphinx -sphinxcontrib-htmlhelp==1.0.3 - # via sphinx -sphinxcontrib-jsmath==1.0.1 - # via sphinx -sphinxcontrib-qthelp==1.0.3 - # via sphinx -sphinxcontrib-serializinghtml==1.1.4 - # via sphinx -sphinxcontrib-spelling==7.7.0 - # via -r requirements/static/ci/docs.in -sphinxcontrib.httpdomain==1.8.1 - # via -r requirements/static/ci/docs.in -tempora==4.1.1 - # via - # -c requirements/static/ci/py3.7/linux.txt - # portend -tornado==6.2.0 ; python_version < "3.8" - # via - # -c requirements/static/ci/py3.7/linux.txt - # -r requirements/base.txt -typing-extensions==3.10.0.0 - # via - # -c requirements/static/ci/py3.7/linux.txt - # importlib-metadata - # markdown-it-py - # myst-docutils -uc-micro-py==1.0.1 - # via linkify-it-py -urllib3==1.26.6 - # via - # -c requirements/static/ci/py3.7/linux.txt - # requests -zc.lockfile==1.4 - # via - # -c requirements/static/ci/py3.7/linux.txt - # cherrypy -zipp==3.5.0 - # via - # -c requirements/static/ci/py3.7/linux.txt - # importlib-metadata - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/requirements/static/ci/py3.7/freebsd-crypto.txt b/requirements/static/ci/py3.7/freebsd-crypto.txt deleted file mode 100644 index 7c8974d75e9d..000000000000 --- a/requirements/static/ci/py3.7/freebsd-crypto.txt +++ /dev/null @@ -1,10 +0,0 @@ -# -# This file is autogenerated by pip-compile -# To update, run: -# -# pip-compile --output-file=requirements/static/ci/py3.7/freebsd-crypto.txt --pip-args='--constraint=requirements/static/ci/py3.7/freebsd.txt' requirements/static/ci/crypto.in -# -m2crypto==0.38.0 - # via -r requirements/static/ci/crypto.in -pycryptodome==3.9.7 - # via -r requirements/static/ci/crypto.in diff --git a/requirements/static/ci/py3.7/freebsd.txt b/requirements/static/ci/py3.7/freebsd.txt deleted file mode 100644 index b400a1450ffb..000000000000 --- a/requirements/static/ci/py3.7/freebsd.txt +++ /dev/null @@ -1,513 +0,0 @@ -# -# This file is autogenerated by pip-compile -# To update, run: -# -# pip-compile --output-file=requirements/static/ci/py3.7/freebsd.txt --pip-args='--constraint=requirements/static/pkg/py3.7/freebsd.txt' requirements/base.txt requirements/pytest.txt requirements/static/ci/common.in requirements/static/ci/freebsd.in requirements/static/pkg/freebsd.in requirements/zeromq.txt -# -aiohttp==3.8.1 - # via etcd3-py -aiosignal==1.2.0 - # via aiohttp -apache-libcloud==2.5.0 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -asn1crypto==1.3.0 - # via - # certvalidator - # oscrypto -async-timeout==4.0.2 - # via aiohttp -asynctest==0.13.0 - # via aiohttp -attrs==20.3.0 - # via - # aiohttp - # jsonschema - # pytest - # pytest-salt-factories - # pytest-shell-utilities - # pytest-skip-markers - # pytest-system-statistics -backports.entry-points-selectable==1.1.0 - # via virtualenv -bcrypt==3.1.6 - # via - # paramiko - # passlib -boto3==1.21.46 ; python_version >= "3.6" - # via - # -r requirements/static/ci/common.in - # moto -boto==2.49.0 - # via -r requirements/static/ci/common.in -botocore==1.24.46 - # via - # boto3 - # moto - # s3transfer -cachetools==3.1.0 - # via google-auth -cassandra-driver==3.24.0 - # via -r requirements/static/ci/common.in -certifi==2022.12.7 - # via - # -r requirements/static/ci/common.in - # kubernetes - # requests -certvalidator==0.11.1 - # via vcert -cffi==1.14.6 - # via - # -r requirements/static/ci/common.in - # bcrypt - # cryptography - # napalm - # pygit2 - # pynacl -charset-normalizer==2.0.12 - # via - # aiohttp - # requests -cheetah3==3.2.6.post2 - # via -r requirements/static/ci/common.in -cheroot==8.5.2 - # via cherrypy -cherrypy==18.6.1 - # via - # -r requirements/static/ci/common.in - # -r requirements/static/pkg/freebsd.in -ciscoconfparse==1.5.19 - # via napalm -click==7.1.2 - # via geomet -clustershell==1.8.3 - # via -r requirements/static/ci/common.in -colorama==0.4.3 - # via ciscoconfparse -contextvars==2.4 - # via -r requirements/base.txt -croniter==0.3.29 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -cryptography==39.0.2 - # via - # etcd3-py - # moto - # paramiko - # pyopenssl - # vcert -distlib==0.3.2 - # via virtualenv -distro==1.5.0 - # via - # -r requirements/base.txt - # -r requirements/static/pkg/freebsd.in - # pytest-skip-markers -dnspython==1.16.0 - # via - # -r requirements/static/ci/common.in - # ciscoconfparse - # python-etcd -docker==5.0.3 - # via - # -r requirements/static/ci/common.in - # pytest-salt-factories -etcd3-py==0.1.6 ; python_version >= "3.6" - # via -r requirements/static/ci/common.in -exceptiongroup==1.0.4 - # via pytest -filelock==3.0.12 - # via virtualenv -flaky==3.7.0 - # via -r requirements/pytest.txt -frozenlist==1.3.0 - # via - # aiohttp - # aiosignal -future==0.18.3 - # via - # napalm - # textfsm -genshi==0.7.5 - # via -r requirements/static/ci/common.in -geomet==0.2.1.post1 - # via cassandra-driver -gitdb==4.0.5 - # via gitpython -gitpython==3.1.30 ; python_version >= "3.7" - # via -r requirements/static/ci/common.in -google-auth==1.6.3 - # via kubernetes -hglib==2.6.1 - # via -r requirements/static/ci/freebsd.in -idna==2.8 - # via - # etcd3-py - # requests - # yarl -immutables==0.15 - # via contextvars -importlib-metadata==4.6.4 - # via - # -r requirements/static/pkg/freebsd.in - # backports.entry-points-selectable - # jsonschema - # mako - # moto - # pluggy - # pytest - # virtualenv -iniconfig==1.0.1 - # via pytest -ipaddress==1.0.22 - # via kubernetes -jaraco.classes==3.2.1 - # via jaraco.collections -jaraco.collections==3.4.0 - # via cherrypy -jaraco.functools==2.0 - # via - # cheroot - # jaraco.text - # tempora -jaraco.text==3.5.1 - # via jaraco.collections -jinja2==3.1.2 - # via - # -r requirements/base.txt - # junos-eznc - # moto - # napalm -jmespath==1.0.1 - # via - # -r requirements/base.txt - # -r requirements/static/ci/common.in - # boto3 - # botocore -jsonschema==3.2.0 - # via -r requirements/static/ci/common.in -junos-eznc==2.4.0 ; sys_platform != "win32" and python_version <= "3.10" - # via - # -r requirements/static/ci/common.in - # napalm -jxmlease==1.0.1 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -kazoo==2.6.1 ; sys_platform != "win32" and sys_platform != "darwin" - # via -r requirements/static/ci/common.in -keyring==5.7.1 - # via -r requirements/static/ci/common.in -kubernetes==3.0.0 - # via -r requirements/static/ci/common.in -libnacl==1.7.1 ; sys_platform != "win32" and sys_platform != "darwin" - # via -r requirements/static/ci/common.in -looseversion==1.0.2 - # via -r requirements/base.txt -lxml==4.9.1 - # via - # junos-eznc - # napalm - # ncclient -mako==1.2.2 - # via -r requirements/static/ci/common.in -markupsafe==2.1.2 - # via - # -r requirements/base.txt - # jinja2 - # mako - # moto - # werkzeug -mercurial==6.0.1 - # via -r requirements/static/ci/freebsd.in -mock==3.0.5 - # via -r requirements/pytest.txt -more-itertools==5.0.0 - # via - # cheroot - # cherrypy - # jaraco.classes - # jaraco.functools -moto==3.0.1 ; python_version >= "3.6" - # via -r requirements/static/ci/common.in -msgpack==1.0.2 - # via - # -r requirements/base.txt - # pytest-salt-factories -multidict==6.0.2 - # via - # aiohttp - # yarl -napalm==3.1.0 ; sys_platform != "win32" and python_version > "3.6" and python_version < "3.10" - # via -r requirements/static/ci/common.in -ncclient==0.6.4 - # via junos-eznc -netaddr==0.7.19 - # via - # junos-eznc - # napalm - # pyeapi -netmiko==3.2.0 - # via napalm -ntc-templates==1.4.0 - # via junos-eznc -oscrypto==1.2.0 - # via certvalidator -packaging==21.3 - # via - # -r requirements/base.txt - # pytest -paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin" - # via - # -r requirements/static/ci/common.in - # junos-eznc - # napalm - # ncclient - # netmiko - # scp -passlib[bcrypt]==1.7.4 - # via - # -r requirements/static/ci/common.in - # ciscoconfparse -pathspec==0.9.0 - # via yamllint -pathtools==0.1.2 - # via watchdog -platformdirs==2.2.0 - # via virtualenv -pluggy==0.13.0 - # via pytest -portend==2.4 - # via cherrypy -psutil==5.8.0 - # via - # -r requirements/base.txt - # pytest-salt-factories - # pytest-shell-utilities - # pytest-system-statistics -pyasn1-modules==0.2.4 - # via google-auth -pyasn1==0.4.8 - # via - # pyasn1-modules - # rsa -pycparser==2.17 - # via cffi -pycryptodomex==3.9.8 - # via -r requirements/crypto.txt -pyeapi==0.8.3 - # via napalm -pygit2==1.8.0 ; python_version >= "3.7" - # via -r requirements/static/ci/freebsd.in -pyinotify==0.9.6 ; sys_platform != "win32" and sys_platform != "darwin" and platform_system != "openbsd" - # via -r requirements/static/ci/common.in -pynacl==1.3.0 - # via paramiko -pyopenssl==23.0.0 - # via - # -r requirements/static/pkg/freebsd.in - # etcd3-py -pyparsing==3.0.9 - # via - # junos-eznc - # packaging -pyrsistent==0.17.3 - # via jsonschema -pyserial==3.4 - # via - # junos-eznc - # netmiko -pytest-custom-exit-code==0.3.0 - # via -r requirements/pytest.txt -pytest-helpers-namespace==2021.4.29 - # via - # -r requirements/pytest.txt - # pytest-salt-factories - # pytest-shell-utilities -pytest-httpserver==1.0.4 - # via -r requirements/pytest.txt -pytest-salt-factories[docker]==1.0.0rc21 ; sys_platform != "win32" - # via -r requirements/pytest.txt -pytest-shell-utilities==1.6.0 - # via pytest-salt-factories -pytest-skip-markers==1.2.0 - # via - # pytest-salt-factories - # pytest-shell-utilities - # pytest-system-statistics -pytest-subtests==0.4.0 - # via -r requirements/pytest.txt -pytest-system-statistics==1.0.2 - # via pytest-salt-factories -pytest-tempdir==2019.10.12 - # via - # -r requirements/pytest.txt - # pytest-salt-factories -pytest-timeout==1.4.2 - # via -r requirements/pytest.txt -pytest==7.2.0 ; python_version > "3.6" - # via - # -r requirements/pytest.txt - # pytest-custom-exit-code - # pytest-helpers-namespace - # pytest-salt-factories - # pytest-shell-utilities - # pytest-skip-markers - # pytest-subtests - # pytest-system-statistics - # pytest-tempdir - # pytest-timeout -python-dateutil==2.8.1 - # via - # -r requirements/static/pkg/freebsd.in - # botocore - # croniter - # kubernetes - # moto - # vcert -python-etcd==0.4.5 - # via -r requirements/static/ci/common.in -python-gnupg==0.4.8 - # via -r requirements/static/pkg/freebsd.in -pytz==2022.1 - # via - # moto - # tempora -pyvmomi==6.7.1.2018.12 - # via -r requirements/static/ci/common.in -pyyaml==5.4.1 - # via - # -r requirements/base.txt - # clustershell - # junos-eznc - # kubernetes - # napalm - # yamllint - # yamlordereddictloader -pyzmq==23.2.0 ; python_version < "3.11" - # via - # -r requirements/zeromq.txt - # pytest-salt-factories -requests==2.31.0 - # via - # -r requirements/base.txt - # -r requirements/static/ci/common.in - # apache-libcloud - # docker - # etcd3-py - # kubernetes - # moto - # napalm - # pyvmomi - # responses - # vcert -responses==0.10.6 - # via moto -rfc3987==1.3.8 - # via -r requirements/static/ci/common.in -rsa==4.7.2 - # via google-auth -s3transfer==0.5.2 - # via boto3 -scp==0.13.2 - # via - # junos-eznc - # napalm - # netmiko -semantic-version==2.9.0 - # via etcd3-py -setproctitle==1.3.2 - # via -r requirements/static/pkg/freebsd.in -six==1.16.0 - # via - # bcrypt - # cassandra-driver - # cheroot - # etcd3-py - # genshi - # geomet - # google-auth - # jsonschema - # junos-eznc - # kazoo - # kubernetes - # mock - # more-itertools - # ncclient - # paramiko - # pynacl - # python-dateutil - # pyvmomi - # responses - # textfsm - # transitions - # vcert - # virtualenv - # websocket-client -smmap==3.0.4 - # via gitdb -sqlparse==0.4.4 - # via -r requirements/static/ci/common.in -strict-rfc3339==0.7 - # via -r requirements/static/ci/common.in -tempora==4.1.1 - # via portend -terminal==0.4.0 - # via ntc-templates -textfsm==1.1.0 - # via - # napalm - # netmiko - # ntc-templates -timelib==0.2.5 - # via -r requirements/static/pkg/freebsd.in -toml==0.10.2 - # via -r requirements/static/ci/common.in -tomli==2.0.1 - # via pytest -tornado==6.2.0 ; python_version < "3.8" - # via -r requirements/base.txt -transitions==0.8.1 - # via junos-eznc -typing-extensions==3.10.0.0 - # via - # aiohttp - # async-timeout - # gitpython - # importlib-metadata - # pytest-shell-utilities - # pytest-system-statistics - # yarl -urllib3==1.26.6 - # via - # botocore - # kubernetes - # python-etcd - # requests -vcert==0.7.4 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -virtualenv==20.7.2 - # via - # -r requirements/static/ci/common.in - # pytest-salt-factories -watchdog==0.10.3 - # via -r requirements/static/ci/common.in -websocket-client==0.40.0 - # via - # docker - # kubernetes -werkzeug==2.2.3 - # via - # moto - # pytest-httpserver -xmltodict==0.12.0 - # via moto -yamllint==1.26.3 - # via -r requirements/static/ci/freebsd.in -yamlordereddictloader==0.4.0 - # via junos-eznc -yarl==1.7.2 - # via aiohttp -zc.lockfile==1.4 - # via cherrypy -zipp==3.5.0 - # via importlib-metadata - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/requirements/static/ci/py3.7/invoke.txt b/requirements/static/ci/py3.7/invoke.txt deleted file mode 100644 index e2cad5c72e0d..000000000000 --- a/requirements/static/ci/py3.7/invoke.txt +++ /dev/null @@ -1,14 +0,0 @@ -# -# This file is autogenerated by pip-compile -# To update, run: -# -# pip-compile --output-file=requirements/static/ci/py3.7/invoke.txt --pip-args='--constraint=requirements/static/ci/py3.7/linux.txt' requirements/static/ci/invoke.in -# -blessings==1.7 - # via -r requirements/static/ci/invoke.in -invoke==1.4.1 - # via -r requirements/static/ci/invoke.in -pyyaml==5.4.1 - # via -r requirements/static/ci/invoke.in -six==1.16.0 - # via blessings diff --git a/requirements/static/ci/py3.7/lint.txt b/requirements/static/ci/py3.7/lint.txt deleted file mode 100644 index ffa5e99ea77f..000000000000 --- a/requirements/static/ci/py3.7/lint.txt +++ /dev/null @@ -1,513 +0,0 @@ -# -# This file is autogenerated by pip-compile -# To update, run: -# -# pip-compile --output-file=requirements/static/ci/py3.7/lint.txt --pip-args='--constraint=requirements/static/ci/py3.7/linux.txt' requirements/base.txt requirements/static/ci/common.in requirements/static/ci/lint.in requirements/static/ci/linux.in requirements/static/pkg/linux.in requirements/zeromq.txt -# -aiohttp==3.8.1 - # via etcd3-py -aiosignal==1.2.0 - # via aiohttp -ansible-core==2.11.4 - # via ansible -ansible==4.4.0 ; python_version < "3.9" - # via -r requirements/static/ci/linux.in -apache-libcloud==3.3.1 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -apscheduler==3.6.3 - # via python-telegram-bot -asn1crypto==1.4.0 - # via - # certvalidator - # oscrypto -astroid==2.3.3 - # via pylint -async-timeout==4.0.2 - # via aiohttp -asynctest==0.13.0 - # via aiohttp -attrs==21.2.0 - # via - # aiohttp - # jsonschema -backports.entry-points-selectable==1.1.0 - # via virtualenv -backports.zoneinfo==0.2.1 - # via tzlocal -bcrypt==3.2.0 - # via - # paramiko - # passlib -boto3==1.21.46 ; python_version >= "3.6" - # via - # -r requirements/static/ci/common.in - # moto -boto==2.49.0 - # via -r requirements/static/ci/common.in -botocore==1.24.46 - # via - # boto3 - # moto - # s3transfer -cachetools==4.2.2 - # via - # google-auth - # python-telegram-bot -cassandra-driver==3.25.0 - # via -r requirements/static/ci/common.in -certifi==2022.12.7 - # via - # -r requirements/static/ci/common.in - # kubernetes - # python-telegram-bot - # requests -certvalidator==0.11.1 - # via vcert -cffi==1.14.6 - # via - # -r requirements/static/ci/common.in - # bcrypt - # cryptography - # napalm - # pygit2 - # pynacl -charset-normalizer==2.0.4 - # via - # aiohttp - # requests -cheetah3==3.2.6.post1 - # via -r requirements/static/ci/common.in -cheroot==8.5.2 - # via cherrypy -cherrypy==18.6.1 - # via - # -r requirements/static/ci/common.in - # -r requirements/static/pkg/linux.in -ciscoconfparse==1.5.46 - # via napalm -click==8.0.1 - # via geomet -clustershell==1.8.3 - # via -r requirements/static/ci/common.in -colorama==0.4.4 - # via ciscoconfparse -contextvars==2.4 - # via -r requirements/base.txt -croniter==1.0.15 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -cryptography==39.0.2 - # via - # -r requirements/static/pkg/linux.in - # ansible-core - # etcd3-py - # moto - # paramiko - # pyopenssl - # vcert -distlib==0.3.2 - # via virtualenv -distro==1.6.0 - # via -r requirements/base.txt -dnspython==2.1.0 - # via - # -r requirements/static/ci/common.in - # ciscoconfparse - # python-etcd -docker==5.0.0 - # via -r requirements/static/ci/common.in -etcd3-py==0.1.6 ; python_version >= "3.6" - # via -r requirements/static/ci/common.in -filelock==3.0.12 - # via virtualenv -frozenlist==1.3.0 - # via - # aiohttp - # aiosignal -future==0.18.3 - # via - # napalm - # textfsm -genshi==0.7.5 - # via -r requirements/static/ci/common.in -geomet==0.2.1.post1 - # via cassandra-driver -gitdb==4.0.7 - # via gitpython -gitpython==3.1.30 ; python_version >= "3.7" - # via -r requirements/static/ci/common.in -google-auth==2.0.1 - # via kubernetes -hglib==2.6.1 - # via -r requirements/static/ci/linux.in -idna==3.2 - # via - # etcd3-py - # requests - # yarl -immutables==0.16 - # via contextvars -importlib-metadata==4.6.4 - # via - # -r requirements/static/pkg/linux.in - # backports.entry-points-selectable - # click - # jsonschema - # mako - # moto - # virtualenv -ipaddress==1.0.23 - # via kubernetes -isort==4.3.21 - # via pylint -jaraco.classes==3.2.1 - # via jaraco.collections -jaraco.collections==3.4.0 - # via cherrypy -jaraco.functools==3.3.0 - # via - # cheroot - # jaraco.text - # tempora -jaraco.text==3.5.1 - # via jaraco.collections -jinja2==3.1.2 - # via - # -r requirements/base.txt - # ansible-core - # junos-eznc - # moto - # napalm -jmespath==0.10.0 - # via - # -r requirements/base.txt - # -r requirements/static/ci/common.in - # boto3 - # botocore -jsonschema==3.2.0 - # via -r requirements/static/ci/common.in -junos-eznc==2.4.0 ; sys_platform != "win32" and python_version <= "3.10" - # via - # -r requirements/static/ci/common.in - # napalm -jxmlease==1.0.3 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -kazoo==2.8.0 ; sys_platform != "win32" and sys_platform != "darwin" - # via -r requirements/static/ci/common.in -keyring==5.7.1 - # via -r requirements/static/ci/common.in -kubernetes==3.0.0 - # via -r requirements/static/ci/common.in -lazy-object-proxy==1.4.3 - # via astroid -libnacl==1.8.0 ; sys_platform != "win32" and sys_platform != "darwin" - # via -r requirements/static/ci/common.in -loguru==0.6.0 - # via ciscoconfparse -looseversion==1.0.2 - # via -r requirements/base.txt -lxml==4.9.1 - # via - # junos-eznc - # napalm - # ncclient -mako==1.2.2 - # via -r requirements/static/ci/common.in -markupsafe==2.1.2 - # via - # -r requirements/base.txt - # jinja2 - # mako - # moto - # werkzeug -mccabe==0.6.1 - # via pylint -mercurial==6.0.1 - # via -r requirements/static/ci/linux.in -modernize==0.5 - # via saltpylint -more-itertools==8.8.0 - # via - # cheroot - # cherrypy - # jaraco.classes - # jaraco.functools -moto==3.0.1 ; python_version >= "3.6" - # via -r requirements/static/ci/common.in -msgpack==1.0.2 - # via -r requirements/base.txt -multidict==6.0.2 - # via - # aiohttp - # yarl -napalm==3.3.1 ; sys_platform != "win32" and python_version > "3.6" and python_version < "3.10" - # via -r requirements/static/ci/common.in -ncclient==0.6.12 - # via - # junos-eznc - # napalm -netaddr==0.8.0 - # via - # junos-eznc - # napalm - # pyeapi -netmiko==3.4.0 - # via napalm -ntc-templates==2.2.2 - # via - # junos-eznc - # netmiko -oscrypto==1.2.1 - # via certvalidator -packaging==21.3 - # via - # -r requirements/base.txt - # ansible-core -paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin" - # via - # -r requirements/static/ci/common.in - # junos-eznc - # napalm - # ncclient - # netmiko - # scp -passlib[bcrypt]==1.7.4 - # via - # -r requirements/static/ci/common.in - # ciscoconfparse -pathspec==0.9.0 - # via yamllint -platformdirs==2.2.0 - # via virtualenv -portend==2.7.1 - # via cherrypy -psutil==5.8.0 - # via -r requirements/base.txt -pyasn1-modules==0.2.8 - # via google-auth -pyasn1==0.4.8 - # via - # pyasn1-modules - # rsa -pycodestyle==2.5.0 - # via saltpylint -pycparser==2.20 - # via cffi -pycryptodomex==3.10.1 - # via -r requirements/crypto.txt -pyeapi==0.8.4 - # via napalm -pygit2==1.0.3 ; python_version <= "3.8" - # via -r requirements/static/ci/linux.in -pyiface==0.0.11 - # via -r requirements/static/ci/linux.in -pyinotify==0.9.6 ; sys_platform != "win32" and sys_platform != "darwin" and platform_system != "openbsd" - # via -r requirements/static/ci/common.in -pyjwt==2.4.0 - # via twilio -pylint==2.4.4 - # via - # -r requirements/static/ci/lint.in - # saltpylint -pymysql==1.0.2 ; python_version > "3.5" - # via -r requirements/static/ci/linux.in -pynacl==1.4.0 - # via paramiko -pyopenssl==23.0.0 - # via - # -r requirements/static/pkg/linux.in - # etcd3-py -pyparsing==3.0.9 - # via - # junos-eznc - # packaging -pyrsistent==0.18.0 - # via jsonschema -pyserial==3.5 - # via - # junos-eznc - # netmiko -python-consul==1.1.0 - # via -r requirements/static/ci/linux.in -python-dateutil==2.8.2 - # via - # -r requirements/static/pkg/linux.in - # botocore - # croniter - # kubernetes - # moto - # vcert -python-etcd==0.4.5 - # via -r requirements/static/ci/common.in -python-gnupg==0.4.8 - # via -r requirements/static/pkg/linux.in -python-telegram-bot==13.7 ; python_version > "3.5" - # via -r requirements/static/ci/linux.in -pytz==2022.1 - # via - # apscheduler - # moto - # python-telegram-bot - # tempora - # twilio -pyvmomi==7.0.2 - # via -r requirements/static/ci/common.in -pyyaml==5.4.1 - # via - # -r requirements/base.txt - # ansible-core - # clustershell - # junos-eznc - # kubernetes - # napalm - # yamllint - # yamlordereddictloader -pyzmq==23.2.0 ; python_version < "3.11" - # via -r requirements/zeromq.txt -redis-py-cluster==2.1.3 - # via -r requirements/static/ci/linux.in -redis==3.5.3 - # via redis-py-cluster -requests==2.31.0 - # via - # -r requirements/base.txt - # -r requirements/static/ci/common.in - # apache-libcloud - # docker - # etcd3-py - # kubernetes - # moto - # napalm - # python-consul - # pyvmomi - # responses - # twilio - # vcert -resolvelib==0.5.4 - # via ansible-core -responses==0.13.4 - # via moto -rfc3987==1.3.8 - # via -r requirements/static/ci/common.in -rpm-vercmp==0.1.2 - # via -r requirements/static/pkg/linux.in -rsa==4.7.2 - # via google-auth -s3transfer==0.5.0 - # via boto3 -saltpylint==2020.9.28 - # via -r requirements/static/ci/lint.in -scp==0.13.6 - # via - # junos-eznc - # napalm - # netmiko -semantic-version==2.9.0 - # via etcd3-py -setproctitle==1.3.2 - # via -r requirements/static/pkg/linux.in -six==1.16.0 - # via - # apscheduler - # astroid - # bcrypt - # cassandra-driver - # cheroot - # etcd3-py - # genshi - # geomet - # jsonschema - # junos-eznc - # kazoo - # kubernetes - # ncclient - # paramiko - # pynacl - # python-consul - # python-dateutil - # pyvmomi - # responses - # textfsm - # transitions - # vcert - # virtualenv - # websocket-client -slack-bolt==1.15.5 - # via -r requirements/static/ci/linux.in -slack-sdk==3.19.5 - # via slack-bolt -smmap==4.0.0 - # via gitdb -sqlparse==0.4.4 - # via -r requirements/static/ci/common.in -strict-rfc3339==0.7 - # via -r requirements/static/ci/common.in -tempora==4.1.1 - # via portend -tenacity==8.0.1 - # via netmiko -textfsm==1.1.2 - # via - # napalm - # ntc-templates -timelib==0.2.5 - # via -r requirements/static/pkg/linux.in -toml==0.10.2 - # via - # -r requirements/static/ci/common.in - # -r requirements/static/ci/lint.in -tornado==6.2 ; python_version < "3.8" - # via - # -r requirements/base.txt - # python-telegram-bot -transitions==0.8.8 - # via junos-eznc -twilio==7.9.2 - # via -r requirements/static/ci/linux.in -typed-ast==1.4.1 - # via astroid -typing-extensions==3.10.0.0 - # via - # aiohttp - # async-timeout - # gitpython - # immutables - # importlib-metadata - # yarl -tzlocal==3.0 - # via apscheduler -urllib3==1.26.6 - # via - # botocore - # kubernetes - # python-etcd - # requests - # responses -vcert==0.7.4 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -virtualenv==20.7.2 - # via -r requirements/static/ci/common.in -watchdog==2.1.5 - # via -r requirements/static/ci/common.in -websocket-client==0.40.0 - # via - # docker - # kubernetes -werkzeug==2.2.3 - # via moto -wrapt==1.11.1 - # via astroid -xmltodict==0.12.0 - # via moto -yamllint==1.26.3 - # via -r requirements/static/ci/linux.in -yamlordereddictloader==0.4.0 - # via junos-eznc -yarl==1.7.2 - # via aiohttp -zc.lockfile==2.0 - # via cherrypy -zipp==3.5.0 - # via importlib-metadata - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/requirements/static/ci/py3.7/linux-crypto.txt b/requirements/static/ci/py3.7/linux-crypto.txt deleted file mode 100644 index 1c23cef2513c..000000000000 --- a/requirements/static/ci/py3.7/linux-crypto.txt +++ /dev/null @@ -1,10 +0,0 @@ -# -# This file is autogenerated by pip-compile -# To update, run: -# -# pip-compile --output-file=requirements/static/ci/py3.7/linux-crypto.txt --pip-args='--constraint=requirements/static/pkg/py3.7/linux.txt' requirements/static/ci/crypto.in -# -m2crypto==0.38.0 - # via -r requirements/static/ci/crypto.in -pycryptodome==3.9.7 - # via -r requirements/static/ci/crypto.in diff --git a/requirements/static/ci/py3.7/linux.txt b/requirements/static/ci/py3.7/linux.txt deleted file mode 100644 index 8cf97a0956bb..000000000000 --- a/requirements/static/ci/py3.7/linux.txt +++ /dev/null @@ -1,562 +0,0 @@ -# -# This file is autogenerated by pip-compile -# To update, run: -# -# pip-compile --output-file=requirements/static/ci/py3.7/linux.txt --pip-args='--constraint=requirements/static/pkg/py3.7/linux.txt' requirements/base.txt requirements/pytest.txt requirements/static/ci/common.in requirements/static/ci/linux.in requirements/static/pkg/linux.in requirements/zeromq.txt -# -aiohttp==3.8.1 - # via etcd3-py -aiosignal==1.2.0 - # via aiohttp -ansible-core==2.11.7 - # via ansible -ansible==4.4.0 ; python_version < "3.9" - # via -r requirements/static/ci/linux.in -apache-libcloud==2.5.0 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -apscheduler==3.6.3 - # via python-telegram-bot -asn1crypto==1.3.0 - # via - # certvalidator - # oscrypto -async-timeout==4.0.2 - # via aiohttp -asynctest==0.13.0 - # via aiohttp -attrs==20.3.0 - # via - # aiohttp - # jsonschema - # pytest - # pytest-salt-factories - # pytest-shell-utilities - # pytest-skip-markers - # pytest-system-statistics -backports.entry-points-selectable==1.1.0 - # via virtualenv -bcrypt==3.1.6 - # via - # paramiko - # passlib -boto3==1.21.46 ; python_version >= "3.6" - # via - # -r requirements/static/ci/common.in - # moto -boto==2.49.0 - # via -r requirements/static/ci/common.in -botocore==1.24.46 - # via - # boto3 - # moto - # s3transfer -cachetools==4.2.2 - # via - # google-auth - # python-telegram-bot -cassandra-driver==3.23.0 - # via -r requirements/static/ci/common.in -certifi==2022.12.7 - # via - # -r requirements/static/ci/common.in - # kubernetes - # python-telegram-bot - # requests -certvalidator==0.11.1 - # via vcert -cffi==1.14.6 - # via - # -r requirements/static/ci/common.in - # bcrypt - # cryptography - # napalm - # pygit2 - # pynacl -charset-normalizer==2.0.12 - # via - # aiohttp - # requests -cheetah3==3.2.6.post2 - # via -r requirements/static/ci/common.in -cheroot==8.5.2 - # via cherrypy -cherrypy==18.6.1 - # via - # -r requirements/static/ci/common.in - # -r requirements/static/pkg/linux.in -ciscoconfparse==1.5.19 - # via napalm -click==7.1.1 - # via geomet -clustershell==1.8.3 - # via -r requirements/static/ci/common.in -colorama==0.4.3 - # via ciscoconfparse -contextvars==2.4 - # via -r requirements/base.txt -croniter==0.3.29 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -cryptography==39.0.2 - # via - # -r requirements/static/pkg/linux.in - # ansible-core - # etcd3-py - # moto - # paramiko - # pyopenssl - # vcert -distlib==0.3.2 - # via virtualenv -distro==1.5.0 - # via - # -r requirements/base.txt - # pytest-skip-markers -dnspython==1.16.0 - # via - # -r requirements/static/ci/common.in - # ciscoconfparse - # python-etcd -docker==5.0.3 - # via - # -r requirements/static/ci/common.in - # pytest-salt-factories -etcd3-py==0.1.6 ; python_version >= "3.6" - # via -r requirements/static/ci/common.in -exceptiongroup==1.0.4 - # via pytest -filelock==3.0.12 - # via virtualenv -flaky==3.7.0 - # via -r requirements/pytest.txt -frozenlist==1.3.0 - # via - # aiohttp - # aiosignal -future==0.18.3 - # via - # napalm - # textfsm -genshi==0.7.5 - # via -r requirements/static/ci/common.in -geomet==0.1.2 - # via cassandra-driver -gitdb==4.0.5 - # via gitpython -gitpython==3.1.30 ; python_version >= "3.7" - # via -r requirements/static/ci/common.in -google-auth==1.6.3 - # via kubernetes -hglib==2.6.1 - # via -r requirements/static/ci/linux.in -idna==2.8 - # via - # etcd3-py - # requests - # yarl -immutables==0.15 - # via contextvars -importlib-metadata==4.6.4 - # via - # -r requirements/static/pkg/linux.in - # backports.entry-points-selectable - # jsonschema - # mako - # moto - # pluggy - # pytest - # virtualenv -iniconfig==1.0.1 - # via pytest -ipaddress==1.0.22 - # via kubernetes -jaraco.classes==3.2.1 - # via jaraco.collections -jaraco.collections==3.4.0 - # via cherrypy -jaraco.functools==2.0 - # via - # cheroot - # jaraco.text - # tempora -jaraco.text==3.5.1 - # via jaraco.collections -jinja2==3.1.2 - # via - # -r requirements/base.txt - # ansible-core - # junos-eznc - # moto - # napalm -jmespath==1.0.1 - # via - # -r requirements/base.txt - # -r requirements/static/ci/common.in - # boto3 - # botocore -jsonschema==3.2.0 - # via -r requirements/static/ci/common.in -junos-eznc==2.4.0 ; sys_platform != "win32" and python_version <= "3.10" - # via - # -r requirements/static/ci/common.in - # napalm -jxmlease==1.0.1 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -kazoo==2.6.1 ; sys_platform != "win32" and sys_platform != "darwin" - # via -r requirements/static/ci/common.in -keyring==5.7.1 - # via -r requirements/static/ci/common.in -kubernetes==3.0.0 - # via -r requirements/static/ci/common.in -libnacl==1.7.1 ; sys_platform != "win32" and sys_platform != "darwin" - # via -r requirements/static/ci/common.in -looseversion==1.0.2 - # via -r requirements/base.txt -lxml==4.9.1 - # via - # junos-eznc - # napalm - # ncclient -mako==1.2.2 - # via -r requirements/static/ci/common.in -markupsafe==2.1.2 - # via - # -r requirements/base.txt - # jinja2 - # mako - # moto - # werkzeug -mercurial==6.0.1 - # via -r requirements/static/ci/linux.in -mock==3.0.5 - # via -r requirements/pytest.txt -more-itertools==5.0.0 - # via - # cheroot - # cherrypy - # jaraco.classes - # jaraco.functools -moto==3.0.1 ; python_version >= "3.6" - # via -r requirements/static/ci/common.in -msgpack==1.0.2 - # via - # -r requirements/base.txt - # pytest-salt-factories -multidict==6.0.2 - # via - # aiohttp - # yarl -napalm==3.1.0 ; sys_platform != "win32" and python_version > "3.6" and python_version < "3.10" - # via -r requirements/static/ci/common.in -ncclient==0.6.4 - # via junos-eznc -netaddr==0.7.19 - # via - # junos-eznc - # napalm - # pyeapi -netmiko==3.2.0 - # via napalm -ntc-templates==1.4.0 - # via junos-eznc -oscrypto==1.2.0 - # via certvalidator -packaging==21.3 - # via - # -r requirements/base.txt - # ansible-core - # pytest -paramiko==2.10.1 ; sys_platform != "win32" and sys_platform != "darwin" - # via - # -r requirements/static/ci/common.in - # junos-eznc - # napalm - # ncclient - # netmiko - # scp -passlib[bcrypt]==1.7.4 - # via - # -r requirements/static/ci/common.in - # ciscoconfparse -pathspec==0.9.0 - # via yamllint -pathtools==0.1.2 - # via watchdog -platformdirs==2.2.0 - # via virtualenv -pluggy==0.13.0 - # via pytest -portend==2.4 - # via cherrypy -psutil==5.8.0 - # via - # -r requirements/base.txt - # pytest-salt-factories - # pytest-shell-utilities - # pytest-system-statistics -pyasn1-modules==0.2.4 - # via google-auth -pyasn1==0.4.8 - # via - # pyasn1-modules - # rsa -pycparser==2.17 - # via cffi -pycryptodomex==3.9.8 - # via -r requirements/crypto.txt -pyeapi==0.8.3 - # via napalm -pygit2==1.0.3 ; python_version <= "3.8" - # via -r requirements/static/ci/linux.in -pyiface==0.0.11 - # via -r requirements/static/ci/linux.in -pyinotify==0.9.6 ; sys_platform != "win32" and sys_platform != "darwin" and platform_system != "openbsd" - # via -r requirements/static/ci/common.in -pyjwt==2.4.0 - # via twilio -pymysql==1.0.2 ; python_version > "3.5" - # via -r requirements/static/ci/linux.in -pynacl==1.3.0 - # via paramiko -pyopenssl==23.0.0 - # via - # -r requirements/static/pkg/linux.in - # etcd3-py -pyparsing==3.0.9 - # via - # junos-eznc - # packaging -pyrsistent==0.17.3 - # via jsonschema -pyserial==3.4 - # via - # junos-eznc - # netmiko -pytest-custom-exit-code==0.3.0 - # via -r requirements/pytest.txt -pytest-helpers-namespace==2021.4.29 - # via - # -r requirements/pytest.txt - # pytest-salt-factories - # pytest-shell-utilities -pytest-httpserver==1.0.4 - # via -r requirements/pytest.txt -pytest-salt-factories[docker]==1.0.0rc21 ; sys_platform != "win32" - # via -r requirements/pytest.txt -pytest-shell-utilities==1.6.0 - # via pytest-salt-factories -pytest-skip-markers==1.2.0 - # via - # pytest-salt-factories - # pytest-shell-utilities - # pytest-system-statistics -pytest-subtests==0.4.0 - # via -r requirements/pytest.txt -pytest-system-statistics==1.0.2 - # via pytest-salt-factories -pytest-tempdir==2019.10.12 - # via - # -r requirements/pytest.txt - # pytest-salt-factories -pytest-timeout==1.4.2 - # via -r requirements/pytest.txt -pytest==7.2.0 ; python_version > "3.6" - # via - # -r requirements/pytest.txt - # pytest-custom-exit-code - # pytest-helpers-namespace - # pytest-salt-factories - # pytest-shell-utilities - # pytest-skip-markers - # pytest-subtests - # pytest-system-statistics - # pytest-tempdir - # pytest-timeout -python-consul==1.1.0 - # via -r requirements/static/ci/linux.in -python-dateutil==2.8.1 - # via - # -r requirements/static/pkg/linux.in - # botocore - # croniter - # kubernetes - # moto - # vcert -python-etcd==0.4.5 - # via -r requirements/static/ci/common.in -python-gnupg==0.4.8 - # via -r requirements/static/pkg/linux.in -python-telegram-bot==13.7 ; python_version > "3.5" - # via -r requirements/static/ci/linux.in -pytz==2022.1 - # via - # apscheduler - # moto - # python-telegram-bot - # tempora - # twilio - # tzlocal -pyvmomi==6.7.1.2018.12 - # via -r requirements/static/ci/common.in -pyyaml==5.4.1 - # via - # -r requirements/base.txt - # ansible-core - # clustershell - # junos-eznc - # kubernetes - # napalm - # yamllint - # yamlordereddictloader -pyzmq==23.2.0 ; python_version < "3.11" - # via - # -r requirements/zeromq.txt - # pytest-salt-factories -redis-py-cluster==2.1.3 - # via -r requirements/static/ci/linux.in -redis==3.5.3 - # via redis-py-cluster -requests==2.31.0 - # via - # -r requirements/base.txt - # -r requirements/static/ci/common.in - # apache-libcloud - # docker - # etcd3-py - # kubernetes - # moto - # napalm - # python-consul - # pyvmomi - # responses - # twilio - # vcert -resolvelib==0.5.4 - # via ansible-core -responses==0.10.6 - # via moto -rfc3987==1.3.8 - # via -r requirements/static/ci/common.in -rpm-vercmp==0.1.2 - # via -r requirements/static/pkg/linux.in -rsa==4.7.2 - # via google-auth -s3transfer==0.5.2 - # via boto3 -scp==0.13.2 - # via - # junos-eznc - # napalm - # netmiko -semantic-version==2.9.0 - # via etcd3-py -setproctitle==1.3.2 - # via -r requirements/static/pkg/linux.in -six==1.16.0 - # via - # apscheduler - # bcrypt - # cassandra-driver - # cheroot - # etcd3-py - # genshi - # geomet - # google-auth - # jsonschema - # junos-eznc - # kazoo - # kubernetes - # mock - # more-itertools - # ncclient - # paramiko - # pynacl - # python-consul - # python-dateutil - # pyvmomi - # responses - # textfsm - # transitions - # vcert - # virtualenv - # websocket-client -slack-bolt==1.15.5 - # via -r requirements/static/ci/linux.in -slack-sdk==3.19.5 - # via slack-bolt -smmap==3.0.4 - # via gitdb -sqlparse==0.4.4 - # via -r requirements/static/ci/common.in -strict-rfc3339==0.7 - # via -r requirements/static/ci/common.in -tempora==4.1.1 - # via portend -terminal==0.4.0 - # via ntc-templates -textfsm==1.1.0 - # via - # napalm - # netmiko - # ntc-templates -timelib==0.2.5 - # via -r requirements/static/pkg/linux.in -toml==0.10.2 - # via -r requirements/static/ci/common.in -tomli==2.0.1 - # via pytest -tornado==6.2 ; python_version < "3.8" - # via - # -r requirements/base.txt - # python-telegram-bot -transitions==0.8.1 - # via junos-eznc -twilio==7.9.2 - # via -r requirements/static/ci/linux.in -typing-extensions==3.10.0.0 - # via - # aiohttp - # async-timeout - # gitpython - # importlib-metadata - # pytest-shell-utilities - # pytest-system-statistics - # yarl -tzlocal==2.1 - # via apscheduler -urllib3==1.26.6 - # via - # botocore - # kubernetes - # python-etcd - # requests -vcert==0.7.4 ; sys_platform != "win32" - # via -r requirements/static/ci/common.in -virtualenv==20.7.2 - # via - # -r requirements/static/ci/common.in - # pytest-salt-factories -watchdog==0.10.3 - # via -r requirements/static/ci/common.in -websocket-client==0.40.0 - # via - # docker - # kubernetes -werkzeug==2.2.3 - # via - # moto - # pytest-httpserver -xmltodict==0.12.0 - # via moto -yamllint==1.26.3 - # via -r requirements/static/ci/linux.in -yamlordereddictloader==0.4.0 - # via junos-eznc -yarl==1.7.2 - # via aiohttp -zc.lockfile==1.4 - # via cherrypy -zipp==3.5.0 - # via importlib-metadata - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/requirements/static/ci/py3.7/windows-crypto.txt b/requirements/static/ci/py3.7/windows-crypto.txt deleted file mode 100644 index d3c328449144..000000000000 --- a/requirements/static/ci/py3.7/windows-crypto.txt +++ /dev/null @@ -1,10 +0,0 @@ -# -# This file is autogenerated by pip-compile -# To update, run: -# -# pip-compile --output-file=requirements/static/ci/py3.7/windows-crypto.txt --pip-args='--constraint=requirements/static/ci/py3.7/windows.txt' requirements/static/ci/crypto.in -# -m2crypto==0.38.0 - # via -r requirements/static/ci/crypto.in -pycryptodome==3.9.7 - # via -r requirements/static/ci/crypto.in diff --git a/requirements/static/ci/py3.7/windows.txt b/requirements/static/ci/py3.7/windows.txt deleted file mode 100644 index 6d62a314de9f..000000000000 --- a/requirements/static/ci/py3.7/windows.txt +++ /dev/null @@ -1,449 +0,0 @@ -# -# This file is autogenerated by pip-compile -# To update, run: -# -# pip-compile --output-file=requirements/static/ci/py3.7/windows.txt --pip-args='--constraint=requirements/static/pkg/py3.7/windows.txt' requirements/pytest.txt requirements/static/ci/common.in requirements/static/ci/windows.in requirements/static/pkg/windows.in requirements/windows.txt -# -aiohttp==3.8.1 - # via etcd3-py -aiosignal==1.2.0 - # via aiohttp -async-timeout==4.0.2 - # via aiohttp -asynctest==0.13.0 - # via aiohttp -attrs==20.3.0 - # via - # aiohttp - # jsonschema - # pytest - # pytest-salt-factories - # pytest-shell-utilities - # pytest-skip-markers - # pytest-system-statistics -backports.entry-points-selectable==1.1.0 - # via virtualenv -bcrypt==4.0.1 - # via passlib -boto3==1.21.46 ; python_version >= "3.6" - # via - # -r requirements/static/ci/common.in - # moto -boto==2.49.0 - # via -r requirements/static/ci/common.in -botocore==1.24.46 - # via - # boto3 - # moto - # s3transfer -cached-property==1.5.2 - # via pygit2 -cachetools==3.1.0 - # via google-auth -cassandra-driver==3.23.0 - # via -r requirements/static/ci/common.in -certifi==2022.12.7 - # via - # -r requirements/static/ci/common.in - # -r requirements/windows.txt - # kubernetes - # requests -cffi==1.14.6 - # via - # -r requirements/static/ci/common.in - # -r requirements/windows.txt - # clr-loader - # cryptography - # pygit2 -charset-normalizer==2.0.12 - # via - # aiohttp - # requests -cheetah3==3.2.6.post2 - # via -r requirements/static/ci/common.in -cheroot==8.5.2 - # via cherrypy -cherrypy==18.6.1 - # via - # -r requirements/static/ci/common.in - # -r requirements/windows.txt -click==7.1.2 - # via geomet -clr-loader==0.2.4 - # via pythonnet -clustershell==1.8.3 - # via -r requirements/static/ci/common.in -colorama==0.4.1 - # via pytest -contextvars==2.4 - # via -r requirements/base.txt -cryptography==39.0.2 - # via - # -r requirements/windows.txt - # etcd3-py - # moto - # pyopenssl - # requests-ntlm -distlib==0.3.2 - # via virtualenv -distro==1.5.0 - # via - # -r requirements/base.txt - # pytest-skip-markers -dmidecode==0.9.0 - # via -r requirements/static/ci/windows.in -dnspython==1.16.0 - # via - # -r requirements/static/ci/common.in - # python-etcd -docker-pycreds==0.4.0 - # via docker -docker==2.7.0 - # via -r requirements/static/ci/common.in -etcd3-py==0.1.6 ; python_version >= "3.6" - # via -r requirements/static/ci/common.in -exceptiongroup==1.0.4 - # via pytest -filelock==3.0.12 - # via virtualenv -flaky==3.7.0 - # via -r requirements/pytest.txt -frozenlist==1.3.0 - # via - # aiohttp - # aiosignal -genshi==0.7.5 - # via -r requirements/static/ci/common.in -geomet==0.1.2 - # via cassandra-driver -gitdb==4.0.7 - # via gitpython -gitpython==3.1.30 ; python_version >= "3.7" - # via - # -r requirements/static/ci/common.in - # -r requirements/windows.txt -google-auth==1.6.3 - # via kubernetes -idna==2.8 - # via - # etcd3-py - # requests - # yarl -immutables==0.15 - # via contextvars -importlib-metadata==4.6.4 - # via - # -r requirements/windows.txt - # backports.entry-points-selectable - # jsonschema - # mako - # moto - # pluggy - # pytest - # virtualenv -iniconfig==1.0.1 - # via pytest -ioloop==0.1a0 - # via -r requirements/windows.txt -ipaddress==1.0.22 - # via kubernetes -jaraco.classes==3.2.1 - # via jaraco.collections -jaraco.collections==3.3.0 - # via cherrypy -jaraco.functools==2.0 - # via - # cheroot - # jaraco.text - # tempora -jaraco.text==3.5.0 - # via jaraco.collections -jinja2==3.1.2 - # via - # -r requirements/base.txt - # moto -jmespath==1.0.1 - # via - # -r requirements/base.txt - # -r requirements/static/ci/common.in - # boto3 - # botocore -jsonschema==3.2.0 - # via -r requirements/static/ci/common.in -keyring==5.7.1 - # via -r requirements/static/ci/common.in -kubernetes==3.0.0 - # via -r requirements/static/ci/common.in -looseversion==1.0.2 - # via -r requirements/base.txt -lxml==4.9.1 - # via -r requirements/windows.txt -mako==1.2.2 - # via -r requirements/static/ci/common.in -markupsafe==2.1.2 - # via - # -r requirements/base.txt - # jinja2 - # mako - # moto - # werkzeug -mock==3.0.5 - # via -r requirements/pytest.txt -more-itertools==8.2.0 - # via - # cheroot - # cherrypy - # jaraco.classes - # jaraco.functools -moto==3.0.1 ; python_version >= "3.6" - # via -r requirements/static/ci/common.in -msgpack==1.0.2 - # via - # -r requirements/base.txt - # pytest-salt-factories -multidict==6.0.2 - # via - # aiohttp - # yarl -ntlm-auth==1.5.0 - # via requests-ntlm -packaging==21.3 - # via - # -r requirements/base.txt - # pytest -passlib[bcrypt]==1.7.4 - # via -r requirements/static/ci/common.in -patch==1.16 - # via -r requirements/static/ci/windows.in -pathspec==0.9.0 - # via yamllint -pathtools==0.1.2 - # via watchdog -platformdirs==2.2.0 - # via virtualenv -pluggy==0.13.0 - # via pytest -portend==2.6 - # via cherrypy -psutil==5.8.0 - # via - # -r requirements/base.txt - # pytest-salt-factories - # pytest-shell-utilities - # pytest-system-statistics -pyasn1-modules==0.2.4 - # via google-auth -pyasn1==0.4.8 - # via - # -r requirements/windows.txt - # pyasn1-modules - # rsa -pycparser==2.21 - # via - # -r requirements/windows.txt - # cffi -pycryptodomex==3.10.1 - # via -r requirements/crypto.txt -pygit2==1.9.1 ; python_version >= "3.7" - # via -r requirements/static/ci/windows.in -pymssql==2.2.1 - # via -r requirements/windows.txt -pymysql==1.0.2 - # via -r requirements/windows.txt -pyopenssl==23.0.0 - # via - # -r requirements/windows.txt - # etcd3-py -pyparsing==3.0.9 - # via packaging -pyrsistent==0.17.3 - # via jsonschema -pytest-custom-exit-code==0.3.0 - # via -r requirements/pytest.txt -pytest-helpers-namespace==2021.4.29 - # via - # -r requirements/pytest.txt - # pytest-salt-factories - # pytest-shell-utilities -pytest-httpserver==1.0.4 - # via -r requirements/pytest.txt -pytest-salt-factories==1.0.0rc21 ; sys_platform == "win32" - # via -r requirements/pytest.txt -pytest-shell-utilities==1.6.0 - # via pytest-salt-factories -pytest-skip-markers==1.2.0 - # via - # pytest-salt-factories - # pytest-shell-utilities - # pytest-system-statistics -pytest-subtests==0.4.0 - # via -r requirements/pytest.txt -pytest-system-statistics==1.0.2 - # via pytest-salt-factories -pytest-tempdir==2019.10.12 - # via - # -r requirements/pytest.txt - # pytest-salt-factories -pytest-timeout==1.4.2 - # via -r requirements/pytest.txt -pytest==7.2.0 ; python_version > "3.6" - # via - # -r requirements/pytest.txt - # pytest-custom-exit-code - # pytest-helpers-namespace - # pytest-salt-factories - # pytest-shell-utilities - # pytest-skip-markers - # pytest-subtests - # pytest-system-statistics - # pytest-tempdir - # pytest-timeout -python-dateutil==2.8.1 - # via - # -r requirements/windows.txt - # botocore - # kubernetes - # moto -python-etcd==0.4.5 - # via -r requirements/static/ci/common.in -python-gnupg==0.4.8 - # via -r requirements/windows.txt -pythonnet==3.0.1 - # via -r requirements/windows.txt -pytz==2022.1 - # via - # moto - # tempora -pyvmomi==6.7.1.2018.12 - # via -r requirements/static/ci/common.in -pywin32==305 - # via - # -r requirements/windows.txt - # cherrypy - # pytest-skip-markers - # wmi -pywinrm==0.4.1 - # via -r requirements/static/ci/windows.in -pyyaml==5.4.1 - # via - # -r requirements/base.txt - # clustershell - # kubernetes - # yamllint -pyzmq==25.0.2 ; sys_platform == "win32" - # via - # -r requirements/zeromq.txt - # pytest-salt-factories -requests-ntlm==1.1.0 - # via pywinrm -requests==2.31.0 - # via - # -r requirements/base.txt - # -r requirements/static/ci/common.in - # -r requirements/windows.txt - # docker - # etcd3-py - # kubernetes - # moto - # pyvmomi - # pywinrm - # requests-ntlm - # responses -responses==0.10.6 - # via moto -rfc3987==1.3.8 - # via -r requirements/static/ci/common.in -rsa==4.7.2 - # via google-auth -s3transfer==0.5.2 - # via boto3 -sed==0.3.1 - # via -r requirements/static/ci/windows.in -semantic-version==2.9.0 - # via etcd3-py -setproctitle==1.3.2 - # via -r requirements/windows.txt -six==1.15.0 - # via - # cassandra-driver - # cheroot - # docker - # docker-pycreds - # etcd3-py - # genshi - # geomet - # google-auth - # jsonschema - # kubernetes - # mock - # python-dateutil - # pyvmomi - # pywinrm - # responses - # virtualenv - # websocket-client -smmap==4.0.0 - # via gitdb -sqlparse==0.4.4 - # via -r requirements/static/ci/common.in -strict-rfc3339==0.7 - # via -r requirements/static/ci/common.in -tempora==4.1.1 - # via portend -timelib==0.2.5 - # via -r requirements/windows.txt -toml==0.10.2 - # via -r requirements/static/ci/common.in -tomli==2.0.1 - # via pytest -tornado==6.2.0 ; python_version < "3.8" - # via -r requirements/base.txt -typing-extensions==4.2.0 - # via - # aiohttp - # async-timeout - # gitpython - # importlib-metadata - # pytest-shell-utilities - # pytest-system-statistics - # yarl -urllib3==1.26.6 - # via - # -r requirements/windows.txt - # botocore - # kubernetes - # python-etcd - # requests -virtualenv==20.7.2 - # via - # -r requirements/static/ci/common.in - # pytest-salt-factories -watchdog==0.10.3 - # via -r requirements/static/ci/common.in -websocket-client==0.40.0 - # via - # docker - # kubernetes -werkzeug==2.2.3 - # via - # moto - # pytest-httpserver -wheel==0.38.4 - # via -r requirements/windows.txt -wmi==1.5.1 - # via -r requirements/windows.txt -xmltodict==0.12.0 - # via - # moto - # pywinrm -yamllint==1.26.3 - # via -r requirements/static/ci/windows.in -yarl==1.7.2 - # via aiohttp -zc.lockfile==2.0 - # via cherrypy -zipp==3.5.0 - # via importlib-metadata - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/requirements/static/pkg/py3.7/freebsd.txt b/requirements/static/pkg/py3.7/freebsd.txt deleted file mode 100644 index 6b65557c8884..000000000000 --- a/requirements/static/pkg/py3.7/freebsd.txt +++ /dev/null @@ -1,107 +0,0 @@ -# -# This file is autogenerated by pip-compile -# To update, run: -# -# pip-compile --output-file=requirements/static/pkg/py3.7/freebsd.txt requirements/base.txt requirements/static/pkg/freebsd.in requirements/zeromq.txt -# -certifi==2022.12.7 - # via requests -cffi==1.14.6 - # via cryptography -charset-normalizer==3.1.0 - # via requests -cheroot==8.5.2 - # via cherrypy -cherrypy==18.6.1 - # via -r requirements/static/pkg/freebsd.in -contextvars==2.4 - # via -r requirements/base.txt -cryptography==39.0.2 - # via pyopenssl -distro==1.5.0 - # via - # -r requirements/base.txt - # -r requirements/static/pkg/freebsd.in -idna==2.8 - # via requests -immutables==0.15 - # via contextvars -importlib-metadata==4.6.4 - # via -r requirements/static/pkg/freebsd.in -jaraco.classes==3.2.1 - # via jaraco.collections -jaraco.collections==3.4.0 - # via cherrypy -jaraco.functools==2.0 - # via - # cheroot - # jaraco.text - # tempora -jaraco.text==3.5.1 - # via jaraco.collections -jinja2==3.1.2 - # via -r requirements/base.txt -jmespath==1.0.1 - # via -r requirements/base.txt -looseversion==1.0.2 - # via -r requirements/base.txt -markupsafe==2.1.2 - # via - # -r requirements/base.txt - # jinja2 -more-itertools==5.0.0 - # via - # cheroot - # cherrypy - # jaraco.classes - # jaraco.functools -msgpack==1.0.2 - # via -r requirements/base.txt -packaging==22.0 - # via -r requirements/base.txt -portend==2.4 - # via cherrypy -psutil==5.8.0 - # via -r requirements/base.txt -pycparser==2.17 - # via cffi -pycryptodomex==3.9.8 - # via -r requirements/crypto.txt -pyopenssl==23.0.0 - # via -r requirements/static/pkg/freebsd.in -python-dateutil==2.8.1 - # via -r requirements/static/pkg/freebsd.in -python-gnupg==0.4.8 - # via -r requirements/static/pkg/freebsd.in -pytz==2022.1 - # via tempora -pyyaml==5.4.1 - # via -r requirements/base.txt -pyzmq==23.2.0 ; python_version < "3.11" - # via -r requirements/zeromq.txt -requests==2.31.0 - # via -r requirements/base.txt -setproctitle==1.3.2 - # via -r requirements/static/pkg/freebsd.in -six==1.16.0 - # via - # cheroot - # more-itertools - # python-dateutil -tempora==4.1.1 - # via portend -timelib==0.2.5 - # via -r requirements/static/pkg/freebsd.in -tornado==6.2.0 ; python_version < "3.8" - # via -r requirements/base.txt -typing-extensions==3.10.0.0 - # via importlib-metadata -urllib3==1.26.6 - # via requests -zc.lockfile==1.4 - # via cherrypy -zipp==3.5.0 - # via importlib-metadata - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/requirements/static/pkg/py3.7/linux.txt b/requirements/static/pkg/py3.7/linux.txt deleted file mode 100644 index 4c419d97e709..000000000000 --- a/requirements/static/pkg/py3.7/linux.txt +++ /dev/null @@ -1,109 +0,0 @@ -# -# This file is autogenerated by pip-compile -# To update, run: -# -# pip-compile --output-file=requirements/static/pkg/py3.7/linux.txt requirements/base.txt requirements/static/pkg/linux.in requirements/zeromq.txt -# -certifi==2022.12.7 - # via requests -cffi==1.14.6 - # via cryptography -charset-normalizer==3.1.0 - # via requests -cheroot==8.5.2 - # via cherrypy -cherrypy==18.6.1 - # via -r requirements/static/pkg/linux.in -contextvars==2.4 - # via -r requirements/base.txt -cryptography==39.0.2 - # via - # -r requirements/static/pkg/linux.in - # pyopenssl -distro==1.5.0 - # via -r requirements/base.txt -idna==2.8 - # via requests -immutables==0.15 - # via contextvars -importlib-metadata==4.6.4 - # via -r requirements/static/pkg/linux.in -jaraco.classes==3.2.1 - # via jaraco.collections -jaraco.collections==3.4.0 - # via cherrypy -jaraco.functools==2.0 - # via - # cheroot - # jaraco.text - # tempora -jaraco.text==3.5.1 - # via jaraco.collections -jinja2==3.1.2 - # via -r requirements/base.txt -jmespath==1.0.1 - # via -r requirements/base.txt -looseversion==1.0.2 - # via -r requirements/base.txt -markupsafe==2.1.2 - # via - # -r requirements/base.txt - # jinja2 -more-itertools==5.0.0 - # via - # cheroot - # cherrypy - # jaraco.classes - # jaraco.functools -msgpack==1.0.2 - # via -r requirements/base.txt -packaging==22.0 - # via -r requirements/base.txt -portend==2.4 - # via cherrypy -psutil==5.8.0 - # via -r requirements/base.txt -pycparser==2.17 - # via cffi -pycryptodomex==3.9.8 - # via -r requirements/crypto.txt -pyopenssl==23.0.0 - # via -r requirements/static/pkg/linux.in -python-dateutil==2.8.1 - # via -r requirements/static/pkg/linux.in -python-gnupg==0.4.8 - # via -r requirements/static/pkg/linux.in -pytz==2022.1 - # via tempora -pyyaml==5.4.1 - # via -r requirements/base.txt -pyzmq==23.2.0 ; python_version < "3.11" - # via -r requirements/zeromq.txt -requests==2.31.0 - # via -r requirements/base.txt -rpm-vercmp==0.1.2 - # via -r requirements/static/pkg/linux.in -setproctitle==1.3.2 - # via -r requirements/static/pkg/linux.in -six==1.16.0 - # via - # cheroot - # more-itertools - # python-dateutil -tempora==4.1.1 - # via portend -timelib==0.2.5 - # via -r requirements/static/pkg/linux.in -tornado==6.2.0 ; python_version < "3.8" - # via -r requirements/base.txt -typing-extensions==3.10.0.0 - # via importlib-metadata -urllib3==1.26.6 - # via requests -zc.lockfile==1.4 - # via cherrypy -zipp==3.5.0 - # via importlib-metadata - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/requirements/static/pkg/py3.7/windows.txt b/requirements/static/pkg/py3.7/windows.txt deleted file mode 100644 index 2456b2461751..000000000000 --- a/requirements/static/pkg/py3.7/windows.txt +++ /dev/null @@ -1,148 +0,0 @@ -# -# This file is autogenerated by pip-compile -# To update, run: -# -# pip-compile --output-file=requirements/static/pkg/py3.7/windows.txt requirements/static/pkg/windows.in requirements/windows.txt -# -certifi==2022.12.7 - # via - # -r requirements/windows.txt - # requests -cffi==1.14.6 - # via - # -r requirements/windows.txt - # clr-loader - # cryptography -charset-normalizer==3.1.0 - # via requests -cheroot==8.5.2 - # via cherrypy -cherrypy==18.6.1 - # via -r requirements/windows.txt -clr-loader==0.2.4 - # via pythonnet -contextvars==2.4 - # via -r requirements/base.txt -cryptography==39.0.2 - # via - # -r requirements/windows.txt - # pyopenssl -distro==1.5.0 - # via -r requirements/base.txt -gitdb==4.0.7 - # via gitpython -gitpython==3.1.30 ; python_version >= "3.7" - # via -r requirements/windows.txt -idna==2.8 - # via requests -immutables==0.15 - # via contextvars -importlib-metadata==4.6.4 - # via -r requirements/windows.txt -ioloop==0.1a0 - # via -r requirements/windows.txt -jaraco.classes==3.2.1 - # via jaraco.collections -jaraco.collections==3.3.0 - # via cherrypy -jaraco.functools==2.0 - # via - # cheroot - # jaraco.text - # tempora -jaraco.text==3.5.0 - # via jaraco.collections -jinja2==3.1.2 - # via -r requirements/base.txt -jmespath==1.0.1 - # via -r requirements/base.txt -looseversion==1.0.2 - # via -r requirements/base.txt -lxml==4.9.1 - # via -r requirements/windows.txt -markupsafe==2.1.2 - # via - # -r requirements/base.txt - # jinja2 -more-itertools==8.2.0 - # via - # cheroot - # cherrypy - # jaraco.classes - # jaraco.functools -msgpack==1.0.2 - # via -r requirements/base.txt -packaging==22.0 - # via -r requirements/base.txt -portend==2.6 - # via cherrypy -psutil==5.8.0 - # via -r requirements/base.txt -pyasn1==0.4.8 - # via -r requirements/windows.txt -pycparser==2.21 - # via - # -r requirements/windows.txt - # cffi -pycryptodomex==3.10.1 - # via -r requirements/crypto.txt -pymssql==2.2.1 - # via -r requirements/windows.txt -pymysql==1.0.2 - # via -r requirements/windows.txt -pyopenssl==23.0.0 - # via -r requirements/windows.txt -python-dateutil==2.8.1 - # via -r requirements/windows.txt -python-gnupg==0.4.8 - # via -r requirements/windows.txt -pythonnet==3.0.1 - # via -r requirements/windows.txt -pytz==2022.1 - # via tempora -pywin32==305 - # via - # -r requirements/windows.txt - # cherrypy - # wmi -pyyaml==5.4.1 - # via -r requirements/base.txt -pyzmq==25.0.2 ; sys_platform == "win32" - # via -r requirements/zeromq.txt -requests==2.31.0 - # via - # -r requirements/base.txt - # -r requirements/windows.txt -setproctitle==1.3.2 - # via -r requirements/windows.txt -six==1.15.0 - # via - # cheroot - # python-dateutil -smmap==4.0.0 - # via gitdb -tempora==4.1.1 - # via portend -timelib==0.2.5 - # via -r requirements/windows.txt -tornado==6.2.0 ; python_version < "3.8" - # via -r requirements/base.txt -typing-extensions==4.4.0 - # via - # gitpython - # importlib-metadata -urllib3==1.26.6 - # via - # -r requirements/windows.txt - # requests -wheel==0.38.4 - # via -r requirements/windows.txt -wmi==1.5.1 - # via -r requirements/windows.txt -zc.lockfile==2.0 - # via cherrypy -zipp==3.5.0 - # via importlib-metadata - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/salt/_logging/handlers.py b/salt/_logging/handlers.py index f4b0b6fec3d1..5c550b565f8c 100644 --- a/salt/_logging/handlers.py +++ b/salt/_logging/handlers.py @@ -5,7 +5,6 @@ Salt's logging handlers """ -import copy import logging import logging.handlers import queue as _queue @@ -147,7 +146,7 @@ def handleError(self, record): Deal with syslog os errors when the log file does not exist """ handled = False - if sys.stderr and sys.version_info >= (3, 5, 4): + if sys.stderr: exc_type, exc, exc_traceback = sys.exc_info() try: if exc_type.__name__ in "FileNotFoundError": @@ -216,92 +215,31 @@ class WatchedFileHandler( """ -if sys.version_info < (3, 7): - # On python versions lower than 3.7, we sill subclass and overwrite prepare to include the fix for: - # https://bugs.python.org/issue35726 - class QueueHandler( - ExcInfoOnLogLevelFormatMixin, logging.handlers.QueueHandler - ): # pylint: disable=no-member,inconsistent-mro - def __init__(self, queue): # pylint: disable=useless-super-delegation - super().__init__(queue) - warn_until_date( - "20240101", - "Please stop using '{name}.QueueHandler' and instead " - "use 'logging.handlers.QueueHandler'. " - "'{name}.QueueHandler' will go away after " - "{{date}}.".format(name=__name__), - ) +class QueueHandler( + ExcInfoOnLogLevelFormatMixin, logging.handlers.QueueHandler +): # pylint: disable=no-member,inconsistent-mro + def __init__(self, queue): # pylint: disable=useless-super-delegation + super().__init__(queue) + warn_until_date( + "20240101", + "Please stop using '{name}.QueueHandler' and instead " + "use 'logging.handlers.QueueHandler'. " + "'{name}.QueueHandler' will go away after " + "{{date}}.".format(name=__name__), + ) - def enqueue(self, record): - """ - Enqueue a record. + def enqueue(self, record): + """ + Enqueue a record. - The base implementation uses put_nowait. You may want to override - this method if you want to use blocking, timeouts or custom queue - implementations. - """ - try: - self.queue.put_nowait(record) - except _queue.Full: - sys.stderr.write( - "[WARNING ] Message queue is full, " - 'unable to write "{}" to log.\n'.format(record) - ) - - def prepare(self, record): - """ - Prepares a record for queuing. The object returned by this method is - enqueued. - The base implementation formats the record to merge the message - and arguments, and removes unpickleable items from the record - in-place. - You might want to override this method if you want to convert - the record to a dict or JSON string, or send a modified copy - of the record while leaving the original intact. - """ - # The format operation gets traceback text into record.exc_text - # (if there's exception data), and also returns the formatted - # message. We can then use this to replace the original - # msg + args, as these might be unpickleable. We also zap the - # exc_info and exc_text attributes, as they are no longer - # needed and, if not None, will typically not be pickleable. - msg = self.format(record) - # bpo-35726: make copy of record to avoid affecting other handlers in the chain. - record = copy.copy(record) - record.message = msg - record.msg = msg - record.args = None - record.exc_info = None - record.exc_text = None - return record - -else: - - class QueueHandler( - ExcInfoOnLogLevelFormatMixin, logging.handlers.QueueHandler - ): # pylint: disable=no-member,inconsistent-mro - def __init__(self, queue): # pylint: disable=useless-super-delegation - super().__init__(queue) - warn_until_date( - "20240101", - "Please stop using '{name}.QueueHandler' and instead " - "use 'logging.handlers.QueueHandler'. " - "'{name}.QueueHandler' will go away after " - "{{date}}.".format(name=__name__), + The base implementation uses put_nowait. You may want to override + this method if you want to use blocking, timeouts or custom queue + implementations. + """ + try: + self.queue.put_nowait(record) + except _queue.Full: + sys.stderr.write( + "[WARNING ] Message queue is full, " + 'unable to write "{}" to log.\n'.format(record) ) - - def enqueue(self, record): - """ - Enqueue a record. - - The base implementation uses put_nowait. You may want to override - this method if you want to use blocking, timeouts or custom queue - implementations. - """ - try: - self.queue.put_nowait(record) - except _queue.Full: - sys.stderr.write( - "[WARNING ] Message queue is full, " - 'unable to write "{}" to log.\n'.format(record) - ) diff --git a/salt/utils/idem.py b/salt/utils/idem.py index ab7641a8e914..5c14cf7c47ab 100644 --- a/salt/utils/idem.py +++ b/salt/utils/idem.py @@ -7,7 +7,6 @@ .. versionadded:: 3002 """ import logging -import sys try: import pop.hub @@ -22,8 +21,6 @@ def __virtual__(): - if sys.version_info < (3, 6): - return False, "idem only works on python3.6 and later" if not HAS_POP[0]: return HAS_POP return __virtualname__ diff --git a/salt/utils/templates.py b/salt/utils/templates.py index 4a8adf2a14f2..5e477207b86d 100644 --- a/salt/utils/templates.py +++ b/salt/utils/templates.py @@ -2,12 +2,14 @@ Template render systems """ import codecs +import importlib.machinery +import importlib.util import logging import os +import pathlib import sys import tempfile import traceback -from pathlib import Path import jinja2 import jinja2.ext @@ -31,17 +33,6 @@ from salt.utils.odict import OrderedDict from salt.utils.versions import Version -if sys.version_info[:2] >= (3, 5): - import importlib.machinery # pylint: disable=no-name-in-module,import-error - import importlib.util # pylint: disable=no-name-in-module,import-error - - USE_IMPORTLIB = True -else: - import imp - - USE_IMPORTLIB = False - - log = logging.getLogger(__name__) @@ -118,14 +109,14 @@ def generate_sls_context(tmplpath, sls): if tmplpath: # Normalize template path - template = str(Path(tmplpath).as_posix()) + template = str(pathlib.Path(tmplpath).as_posix()) # Determine proper template name without root if not sls: template = template.rsplit("/", 1)[-1] - elif template.endswith("{}.sls".format(slspath)): + elif template.endswith(f"{slspath}.sls"): template = template[-(4 + len(slspath)) :] - elif template.endswith("{}/init.sls".format(slspath)): + elif template.endswith(f"{slspath}/init.sls"): template = template[-(9 + len(slspath)) :] else: # Something went wrong @@ -322,14 +313,14 @@ def _get_jinja_error(trace, context=None): # error log place at the beginning if add_log: if template_path: - out = "\n{}\n".format(msg.splitlines()[0]) + out = f"\n{msg.splitlines()[0]}\n" with salt.utils.files.fopen(template_path) as fp_: template_contents = salt.utils.stringutils.to_unicode(fp_.read()) out += salt.utils.stringutils.get_context( template_contents, line, marker=" <======================" ) else: - out = "\n{}\n".format(msg) + out = f"\n{msg}\n" line = 0 return line, out @@ -479,7 +470,7 @@ def opt_jinja_env_helper(opts, optname): line, out = _get_jinja_error(trace, context=decoded_context) if not line: tmplstr = "" - raise SaltRenderError("Jinja variable {}{}".format(exc, out), line, tmplstr) + raise SaltRenderError(f"Jinja variable {exc}{out}", line, tmplstr) except ( jinja2.exceptions.TemplateRuntimeError, jinja2.exceptions.TemplateSyntaxError, @@ -489,9 +480,7 @@ def opt_jinja_env_helper(opts, optname): line, out = _get_jinja_error(trace, context=decoded_context) if not line: tmplstr = "" - raise SaltRenderError( - "Jinja syntax error: {}{}".format(exc, out), line, tmplstr - ) + raise SaltRenderError(f"Jinja syntax error: {exc}{out}", line, tmplstr) except (SaltInvocationError, CommandExecutionError) as exc: trace = traceback.extract_tb(sys.exc_info()[2]) line, out = _get_jinja_error(trace, context=decoded_context) @@ -511,7 +500,7 @@ def opt_jinja_env_helper(opts, optname): if not line: tmplstr = "" else: - tmplstr += "\n{}".format(tracestr) + tmplstr += f"\n{tracestr}" log.debug("Jinja Error") log.debug("Exception:", exc_info=True) log.debug("Out: %s", out) @@ -520,7 +509,7 @@ def opt_jinja_env_helper(opts, optname): log.debug("TraceStr: %s", tracestr) raise SaltRenderError( - "Jinja error: {}{}".format(exc, out), line, tmplstr, trace=tracestr + f"Jinja error: {exc}{out}", line, tmplstr, trace=tracestr ) finally: if loader and isinstance(loader, salt.utils.jinja.SaltCacheLoader): @@ -676,25 +665,21 @@ def py(sfn, string=False, **kwargs): # pylint: disable=C0103 base_fname = os.path.basename(sfn) name = base_fname.split(".")[0] - if USE_IMPORTLIB: - # pylint: disable=no-member - loader = importlib.machinery.SourceFileLoader(name, sfn) - spec = importlib.util.spec_from_file_location(name, sfn, loader=loader) - if spec is None: - raise ImportError() - mod = importlib.util.module_from_spec(spec) - spec.loader.exec_module(mod) - # pylint: enable=no-member - sys.modules[name] = mod - else: - mod = imp.load_source(name, sfn) + loader = importlib.machinery.SourceFileLoader(name, sfn) + spec = importlib.util.spec_from_file_location(name, sfn, loader=loader) + if spec is None: + raise ImportError() + mod = importlib.util.module_from_spec(spec) + spec.loader.exec_module(mod) + # pylint: enable=no-member + sys.modules[name] = mod # File templates need these set as __var__ if "__env__" not in kwargs and "saltenv" in kwargs: setattr(mod, "__env__", kwargs["saltenv"]) builtins = ["salt", "grains", "pillar", "opts"] for builtin in builtins: - arg = "__{}__".format(builtin) + arg = f"__{builtin}__" setattr(mod, arg, kwargs[builtin]) for kwarg in kwargs: diff --git a/setup.py b/setup.py index a6f5fef0a683..0f5870e90295 100755 --- a/setup.py +++ b/setup.py @@ -485,7 +485,7 @@ def run(self): with open(deploy_path, "w") as fp_: fp_.write(script_contents) except OSError as err: - log.error("Failed to write the updated script: {}".format(err)) + log.error(f"Failed to write the updated script: {err}") # Let's the rest of the build command Sdist.run(self) @@ -544,7 +544,7 @@ def run(self): for subdir in ("salt", "tests", "doc"): root = os.path.join(os.path.dirname(__file__), subdir) for dirname, _, _ in os.walk(root): - for to_remove_filename in glob.glob("{}/*.py[oc]".format(dirname)): + for to_remove_filename in glob.glob(f"{dirname}/*.py[oc]"): os.remove(to_remove_filename) @@ -849,14 +849,12 @@ def __init__(self, attrs=None): with open(SALT_LONG_DESCRIPTION_FILE, encoding="utf-8") as f: self.long_description = f.read() self.long_description_content_type = "text/x-rst" - self.python_requires = ">=3.6" + self.python_requires = ">=3.8" self.classifiers = [ "Programming Language :: Python", "Programming Language :: Cython", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", - "Programming Language :: Python :: 3.6", - "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", @@ -910,8 +908,8 @@ def update_metadata(self): continue if attrname == "salt_version": attrname = "version" - if hasattr(self.metadata, "set_{}".format(attrname)): - getattr(self.metadata, "set_{}".format(attrname))(attrvalue) + if hasattr(self.metadata, f"set_{attrname}"): + getattr(self.metadata, f"set_{attrname}")(attrvalue) elif hasattr(self.metadata, attrname): try: setattr(self.metadata, attrname, attrvalue) diff --git a/tests/conftest.py b/tests/conftest.py index a7777c2cea68..51a5c04d82b8 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -408,7 +408,7 @@ def set_max_open_files_limits(min_soft=3072, min_hard=4096): def pytest_report_header(): soft, hard = set_max_open_files_limits() - return "max open files; soft: {}; hard: {}".format(soft, hard) + return f"max open files; soft: {soft}; hard: {hard}" def pytest_itemcollected(item): @@ -850,7 +850,7 @@ def groups_collection_modifyitems(config, items): terminal_reporter = config.pluginmanager.get_plugin("terminalreporter") terminal_reporter.write( - "Running test group #{} ({} tests)\n".format(group_id, len(items)), + f"Running test group #{group_id} ({len(items)} tests)\n", yellow=True, ) @@ -911,12 +911,7 @@ def integration_files_dir(salt_factories): for child in (PYTESTS_DIR / "integration" / "files").iterdir(): destpath = dirname / child.name if child.is_dir(): - if sys.version_info >= (3, 8): - shutil.copytree(str(child), str(destpath), dirs_exist_ok=True) - else: - if destpath.exists(): - shutil.rmtree(str(destpath), ignore_errors=True) - shutil.copytree(str(child), str(destpath)) + shutil.copytree(str(child), str(destpath), dirs_exist_ok=True) else: shutil.copyfile(str(child), str(destpath)) return dirname @@ -1500,7 +1495,7 @@ def from_filenames_collection_modifyitems(config, items): path.replace("\\", os.sep).replace("/", os.sep) ) if not properly_slashed_path.exists(): - errors.append("{}: Does not exist".format(properly_slashed_path)) + errors.append(f"{properly_slashed_path}: Does not exist") continue if ( properly_slashed_path.name == "testrun-changed-files.txt" @@ -1523,12 +1518,12 @@ def from_filenames_collection_modifyitems(config, items): ) continue changed_files_selections.append( - "{}: Source {}".format(line_path, properly_slashed_path) + f"{line_path}: Source {properly_slashed_path}" ) from_filenames_paths.add(line_path) continue changed_files_selections.append( - "{}: Source --from-filenames".format(properly_slashed_path) + f"{properly_slashed_path}: Source --from-filenames" ) from_filenames_paths.add(properly_slashed_path) @@ -1558,7 +1553,7 @@ def from_filenames_collection_modifyitems(config, items): continue # Tests in the listing don't require additional matching and will be added to the # list of tests to run - test_module_selections.append("{}: Source --from-filenames".format(path)) + test_module_selections.append(f"{path}: Source --from-filenames") test_module_paths.add(path) continue if path.name == "setup.py" or path.as_posix().startswith("salt/"): @@ -1571,18 +1566,18 @@ def from_filenames_collection_modifyitems(config, items): # salt/version.py -> # tests/unit/test_version.py # tests/pytests/unit/test_version.py - "**/test_{}".format(path.name), + f"**/test_{path.name}", # salt/modules/grains.py -> # tests/pytests/integration/modules/grains/tests_*.py # salt/modules/saltutil.py -> # tests/pytests/integration/modules/saltutil/test_*.py - "**/{}/test_*.py".format(path.stem), + f"**/{path.stem}/test_*.py", # salt/modules/config.py -> # tests/unit/modules/test_config.py # tests/integration/modules/test_config.py # tests/pytests/unit/modules/test_config.py # tests/pytests/integration/modules/test_config.py - "**/{}/test_{}".format(path.parent.name, path.name), + f"**/{path.parent.name}/test_{path.name}", ) for pattern in glob_patterns: for match in TESTS_DIR.rglob(pattern): @@ -1641,20 +1636,20 @@ def from_filenames_collection_modifyitems(config, items): test_module_paths.add(match_path) continue else: - errors.append("{}: Don't know what to do with this path".format(path)) + errors.append(f"{path}: Don't know what to do with this path") if errors: terminal_reporter.write("Errors:\n", bold=True) for error in errors: - terminal_reporter.write(" * {}\n".format(error)) + terminal_reporter.write(f" * {error}\n") if changed_files_selections: terminal_reporter.write("Changed files collected:\n", bold=True) for selection in changed_files_selections: - terminal_reporter.write(" * {}\n".format(selection)) + terminal_reporter.write(f" * {selection}\n") if test_module_selections: terminal_reporter.write("Selected test modules:\n", bold=True) for selection in test_module_selections: - terminal_reporter.write(" * {}\n".format(selection)) + terminal_reporter.write(f" * {selection}\n") terminal_reporter.section( "From Filenames(--from-filenames) Test Selection", sep="<" ) diff --git a/tests/pytests/unit/modules/test_genesis.py b/tests/pytests/unit/modules/test_genesis.py index 0a2100f48480..7a3b16328435 100644 --- a/tests/pytests/unit/modules/test_genesis.py +++ b/tests/pytests/unit/modules/test_genesis.py @@ -1,10 +1,6 @@ """ :codeauthor: Rupesh Tare """ - - -import sys - import pytest import salt.modules.genesis as genesis @@ -20,11 +16,7 @@ def test_bootstrap(): """ Test for Create an image for a specific platform. """ - # Changed in 3.7.0 pformat no longer includes the comma - if sys.version_info >= (3, 7): - exception_string = "Exception({})".format(repr("foo")) - else: - exception_string = "Exception({},)".format(repr("foo")) + exception_string = "Exception({})".format(repr("foo")) mock = MagicMock(return_value=False) with patch.dict(genesis.__salt__, {"file.directory_exists": mock}): mock = MagicMock(side_effect=Exception("foo")) diff --git a/tests/pytests/unit/utils/test_stringutils.py b/tests/pytests/unit/utils/test_stringutils.py index cece5a084948..5b26d3473b15 100644 --- a/tests/pytests/unit/utils/test_stringutils.py +++ b/tests/pytests/unit/utils/test_stringutils.py @@ -4,7 +4,6 @@ import builtins import re -import sys import textwrap import pytest @@ -185,7 +184,7 @@ def test_is_binary(): assert salt.utils.stringutils.is_binary(b"") is False nontext = 3 * "".join([chr(x) for x in range(1, 32) if x not in (8, 9, 10, 12, 13)]) - almost_bin_str = "{}{}".format(LOREM_IPSUM[:100], nontext[:42]) + almost_bin_str = f"{LOREM_IPSUM[:100]}{nontext[:42]}" assert salt.utils.stringutils.is_binary(almost_bin_str) is False # Also test bytestring @@ -278,16 +277,10 @@ def test_build_whitespace_split_regex(): # With 3.7+, re.escape only escapes special characters, no longer # escaping all characters other than ASCII letters, numbers and # underscores. This includes commas. - if sys.version_info >= (3, 7): - expected_regex = ( - "(?m)^(?:[\\s]+)?Lorem(?:[\\s]+)?ipsum(?:[\\s]+)?dolor(?:[\\s]+)?sit(?:[\\s]+)?amet," - "(?:[\\s]+)?$" - ) - else: - expected_regex = ( - "(?m)^(?:[\\s]+)?Lorem(?:[\\s]+)?ipsum(?:[\\s]+)?dolor(?:[\\s]+)?sit(?:[\\s]+)?amet\\," - "(?:[\\s]+)?$" - ) + expected_regex = ( + "(?m)^(?:[\\s]+)?Lorem(?:[\\s]+)?ipsum(?:[\\s]+)?dolor(?:[\\s]+)?sit(?:[\\s]+)?amet," + "(?:[\\s]+)?$" + ) assert ( salt.utils.stringutils.build_whitespace_split_regex( " ".join(LOREM_IPSUM.split()[:5]) @@ -748,24 +741,15 @@ def test_human_to_bytes(unit): for val in vals: # calculate KB, MB, GB, etc. as 1024 instead of 1000 (legacy use) - assert ( - salt.utils.stringutils.human_to_bytes("{}{}".format(val, unit)) == val * iec - ) - assert ( - salt.utils.stringutils.human_to_bytes("{} {}".format(val, unit)) - == val * iec - ) + assert salt.utils.stringutils.human_to_bytes(f"{val}{unit}") == val * iec + assert salt.utils.stringutils.human_to_bytes(f"{val} {unit}") == val * iec # handle metric (KB, MB, GB, etc.) per standard assert ( - salt.utils.stringutils.human_to_bytes( - "{}{}".format(val, unit), handle_metric=True - ) + salt.utils.stringutils.human_to_bytes(f"{val}{unit}", handle_metric=True) == val * multiplier ) assert ( - salt.utils.stringutils.human_to_bytes( - "{} {}".format(val, unit), handle_metric=True - ) + salt.utils.stringutils.human_to_bytes(f"{val} {unit}", handle_metric=True) == val * multiplier )