* |WARNING| pw129505-129506 [PATCH] [v5, 2/2] dts: add paramiko to dependencies
@ 2023-07-12 20:45 dpdklab
0 siblings, 0 replies; only message in thread
From: dpdklab @ 2023-07-12 20:45 UTC (permalink / raw)
To: test-report; +Cc: dpdk-test-reports
Test-Label: iol-testing
Test-Status: WARNING
http://dpdk.org/patch/129505
_apply patch failure_
Submitter: Jeremy Spewock <jspewock@iol.unh.edu>
Date: Wednesday, July 12 2023 19:18:02
Applied on: CommitID:655eb37b18b1b0dc4d106acdf0dfedde01cfb224
Apply patch set 129505-129506 failed:
Checking patch dts/conf.yaml...
Checking patch dts/framework/config/__init__.py...
error: while searching for:
import pathlib
from dataclasses import dataclass
from enum import Enum, auto, unique
from typing import Any, TypedDict
import warlock # type: ignore
error: patch failed: dts/framework/config/__init__.py:12
Hunk #2 succeeded at 65 (offset -8 lines).
Hunk #3 succeeded at 91 (offset -8 lines).
Hunk #4 succeeded at 100 (offset -8 lines).
Hunk #5 succeeded at 153 (offset -8 lines).
Hunk #6 succeeded at 194 (offset -8 lines).
Hunk #7 succeeded at 205 (offset -8 lines).
Hunk #8 succeeded at 265 (offset -8 lines).
Checking patch dts/framework/config/conf_yaml_schema.json...
Checking patch dts/framework/dts.py...
Checking patch dts/framework/exception.py...
Hunk #2 succeeded at 151 (offset 6 lines).
Checking patch dts/framework/remote_session/__init__.py...
Checking patch dts/framework/remote_session/os_session.py...
error: while searching for:
from abc import ABC, abstractmethod
from collections.abc import Iterable
from pathlib import PurePath
from framework.config import Architecture, NodeConfiguration
from framework.logger import DTSLOG
from framework.settings import SETTINGS
from framework.testbed_model import LogicalCore
from framework.utils import EnvVarsDict, MesonArgs
from .remote import CommandResult, RemoteSession, create_remote_session
class OSSession(ABC):
error: patch failed: dts/framework/remote_session/os_session.py:5
Hunk #2 succeeded at 26 (offset -8 lines).
Hunk #3 succeeded at 38 (offset -8 lines).
error: while searching for:
"""
return self.remote_session.send_command(command, timeout, verify, env)
@abstractmethod
def guess_dpdk_remote_dir(self, remote_dir) -> PurePath:
"""
error: patch failed: dts/framework/remote_session/os_session.py:64
Hunk #5 succeeded at 208 (offset -2 lines).
Checking patch dts/framework/remote_session/posix_session.py...
error: while searching for:
from collections.abc import Iterable
from pathlib import PurePath, PurePosixPath
from framework.config import Architecture
from framework.exception import DPDKBuildError, RemoteCommandExecutionError
from framework.settings import SETTINGS
from framework.utils import EnvVarsDict, MesonArgs
error: patch failed: dts/framework/remote_session/posix_session.py:6
Hunk #2 succeeded at 221 (offset 2 lines).
Checking patch dts/framework/remote_session/remote/__init__.py...
Checking patch dts/framework/remote_session/remote/interactive_remote_session.py...
Checking patch dts/framework/remote_session/remote/interactive_shell.py...
Checking patch dts/framework/remote_session/remote/testpmd_shell.py...
Checking patch dts/framework/test_result.py...
Checking patch dts/framework/test_suite.py...
Checking patch dts/framework/testbed_model/node.py...
Checking patch dts/framework/testbed_model/sut_node.py...
error: while searching for:
# SPDX-License-Identifier: BSD-3-Clause
# Copyright(c) 2010-2014 Intel Corporation
# Copyright(c) 2023 PANTHEON.tech s.r.o.
import os
import tarfile
import time
from pathlib import PurePath
from framework.config import BuildTargetConfiguration, NodeConfiguration
from framework.remote_session import CommandResult, OSSession
from framework.settings import SETTINGS
from framework.utils import EnvVarsDict, MesonArgs
error: patch failed: dts/framework/testbed_model/sut_node.py:1
Hunk #2 succeeded at 16 (offset -13 lines).
error: while searching for:
_env_vars: EnvVarsDict
_remote_tmp_dir: PurePath
__remote_dpdk_dir: PurePath | None
_dpdk_version: str | None
_app_compile_timeout: float
_dpdk_kill_session: OSSession | None
def __init__(self, node_config: NodeConfiguration):
super(SutNode, self).__init__(node_config)
error: patch failed: dts/framework/testbed_model/sut_node.py:30
error: while searching for:
self._env_vars = EnvVarsDict()
self._remote_tmp_dir = self.main_session.get_remote_tmp_dir()
self.__remote_dpdk_dir = None
self._dpdk_version = None
self._app_compile_timeout = 90
self._dpdk_kill_session = None
self._dpdk_timestamp = (
f"{str(os.getpid())}_{time.strftime('%Y%m%d%H%M%S', time.localtime())}"
)
@property
def _remote_dpdk_dir(self) -> PurePath:
error: patch failed: dts/framework/testbed_model/sut_node.py:41
Hunk #5 succeeded at 121 (offset -17 lines).
Hunk #6 succeeded at 156 (offset -17 lines).
error: while searching for:
f"{app_path} {eal_args}", timeout, verify=True
)
class EalParameters(object):
def __init__(
self,
lcore_list: LogicalCoreList,
memory_channels: int,
prefix: str,
no_pci: bool,
vdevs: list[VirtualDevice],
other_eal_param: str,
):
"""
Generate eal parameters character string;
:param lcore_list: the list of logical cores to use.
:param memory_channels: the number of memory channels to use.
:param prefix: set file prefix string, eg:
prefix='vf'
:param no_pci: switch of disable PCI bus eg:
no_pci=True
:param vdevs: virtual device list, eg:
vdevs=[
VirtualDevice('net_ring0'),
VirtualDevice('net_ring1')
]
:param other_eal_param: user defined DPDK eal parameters, eg:
other_eal_param='--single-file-segments'
"""
self._lcore_list = f"-l {lcore_list}"
self._memory_channels = f"-n {memory_channels}"
self._prefix = prefix
if prefix:
self._prefix = f"--file-prefix={prefix}"
self._no_pci = "--no-pci" if no_pci else ""
self._vdevs = " ".join(f"--vdev {vdev}" for vdev in vdevs)
self._other_eal_param = other_eal_param
def __str__(self) -> str:
return (
f"{self._lcore_list} "
f"{self._memory_channels} "
f"{self._prefix} "
f"{self._no_pci} "
f"{self._vdevs} "
f"{self._other_eal_param}"
)
error: patch failed: dts/framework/testbed_model/sut_node.py:262
Checking patch dts/framework/utils.py...
error: while searching for:
import sys
def check_dts_python_version() -> None:
if sys.version_info.major < 3 or (
error: patch failed: dts/framework/utils.py:5
Checking patch dts/tests/TestSuite_smoke_tests.py...
Applied patch dts/conf.yaml cleanly.
Applying patch dts/framework/config/__init__.py with 1 reject...
Rejected hunk #1.
Hunk #2 applied cleanly.
Hunk #3 applied cleanly.
Hunk #4 applied cleanly.
Hunk #5 applied cleanly.
Hunk #6 applied cleanly.
Hunk #7 applied cleanly.
Hunk #8 applied cleanly.
Applied patch dts/framework/config/conf_yaml_schema.json cleanly.
Applied patch dts/framework/dts.py cleanly.
Applied patch dts/framework/exception.py cleanly.
Applied patch dts/framework/remote_session/__init__.py cleanly.
Applying patch dts/framework/remote_session/os_session.py with 2 rejects...
Rejected hunk #1.
Hunk #2 applied cleanly.
Hunk #3 applied cleanly.
Rejected hunk #4.
Hunk #5 applied cleanly.
Applying patch dts/framework/remote_session/posix_session.py with 1 reject...
Rejected hunk #1.
Hunk #2 applied cleanly.
Applied patch dts/framework/remote_session/remote/__init__.py cleanly.
Applied patch dts/framework/remote_session/remote/interactive_remote_session.py cleanly.
Applied patch dts/framework/remote_session/remote/interactive_shell.py cleanly.
Applied patch dts/framework/remote_session/remote/testpmd_shell.py cleanly.
Applied patch dts/framework/test_result.py cleanly.
Applied patch dts/framework/test_suite.py cleanly.
Applied patch dts/framework/testbed_model/node.py cleanly.
Applying patch dts/framework/testbed_model/sut_node.py with 4 rejects...
Rejected hunk #1.
Hunk #2 applied cleanly.
Rejected hunk #3.
Rejected hunk #4.
Hunk #5 applied cleanly.
Hunk #6 applied cleanly.
Rejected hunk #7.
Applying patch dts/framework/utils.py with 1 reject...
Rejected hunk #1.
Applied patch dts/tests/TestSuite_smoke_tests.py cleanly.
hint: Use 'git am --show-current-patch' to see the failed patch
diff a/dts/framework/config/__init__.py b/dts/framework/config/__init__.py (rejected hunks)
@@ -12,6 +12,7 @@
import pathlib
from dataclasses import dataclass
from enum import Enum, auto, unique
+from pathlib import PurePath
from typing import Any, TypedDict
import warlock # type: ignore
diff a/dts/framework/remote_session/os_session.py b/dts/framework/remote_session/os_session.py (rejected hunks)
@@ -5,14 +5,22 @@
from abc import ABC, abstractmethod
from collections.abc import Iterable
from pathlib import PurePath
+from typing import Union
-from framework.config import Architecture, NodeConfiguration
+from framework.config import Architecture, InteractiveApp, NodeConfiguration, NodeInfo
from framework.logger import DTSLOG
+from framework.remote_session.remote import InteractiveShell, TestPmdShell
from framework.settings import SETTINGS
from framework.testbed_model import LogicalCore
from framework.utils import EnvVarsDict, MesonArgs
-from .remote import CommandResult, RemoteSession, create_remote_session
+from .remote import (
+ CommandResult,
+ InteractiveRemoteSession,
+ RemoteSession,
+ create_interactive_session,
+ create_remote_session,
+)
class OSSession(ABC):
@@ -64,6 +74,33 @@ def send_command(
"""
return self.remote_session.send_command(command, timeout, verify, env)
+ def create_interactive_shell(
+ self,
+ shell_type: InteractiveApp,
+ path_to_app: PurePath,
+ eal_parameters: str,
+ timeout: float,
+ ) -> Union[InteractiveShell, TestPmdShell]:
+ """
+ See "create_interactive_shell" in SutNode
+ """
+ match (shell_type):
+ case InteractiveApp.testpmd:
+ return TestPmdShell(
+ self.interactive_session.session,
+ self._logger,
+ path_to_app,
+ timeout=timeout,
+ eal_flags=eal_parameters,
+ )
+ case _:
+ self._logger.info(
+ f"Unhandled app type {shell_type.name}, defaulting to shell."
+ )
+ return InteractiveShell(
+ self.interactive_session.session, self._logger, path_to_app, timeout
+ )
+
@abstractmethod
def guess_dpdk_remote_dir(self, remote_dir) -> PurePath:
"""
diff a/dts/framework/remote_session/posix_session.py b/dts/framework/remote_session/posix_session.py (rejected hunks)
@@ -6,7 +6,7 @@
from collections.abc import Iterable
from pathlib import PurePath, PurePosixPath
-from framework.config import Architecture
+from framework.config import Architecture, NodeInfo
from framework.exception import DPDKBuildError, RemoteCommandExecutionError
from framework.settings import SETTINGS
from framework.utils import EnvVarsDict, MesonArgs
diff a/dts/framework/testbed_model/sut_node.py b/dts/framework/testbed_model/sut_node.py (rejected hunks)
@@ -1,14 +1,27 @@
# SPDX-License-Identifier: BSD-3-Clause
# Copyright(c) 2010-2014 Intel Corporation
# Copyright(c) 2023 PANTHEON.tech s.r.o.
+# Copyright(c) 2023 University of New Hampshire
import os
import tarfile
import time
from pathlib import PurePath
-
-from framework.config import BuildTargetConfiguration, NodeConfiguration
-from framework.remote_session import CommandResult, OSSession
+from typing import Union
+
+from framework.config import (
+ BuildTargetConfiguration,
+ BuildTargetInfo,
+ InteractiveApp,
+ NodeConfiguration,
+ NodeInfo,
+)
+from framework.remote_session import (
+ CommandResult,
+ InteractiveShell,
+ OSSession,
+ TestPmdShell,
+)
from framework.settings import SETTINGS
from framework.utils import EnvVarsDict, MesonArgs
@@ -30,9 +89,11 @@ class SutNode(Node):
_env_vars: EnvVarsDict
_remote_tmp_dir: PurePath
__remote_dpdk_dir: PurePath | None
- _dpdk_version: str | None
_app_compile_timeout: float
_dpdk_kill_session: OSSession | None
+ _dpdk_version: str | None
+ _node_info: NodeInfo | None
+ _compiler_version: str | None
def __init__(self, node_config: NodeConfiguration):
super(SutNode, self).__init__(node_config)
@@ -41,12 +102,14 @@ def __init__(self, node_config: NodeConfiguration):
self._env_vars = EnvVarsDict()
self._remote_tmp_dir = self.main_session.get_remote_tmp_dir()
self.__remote_dpdk_dir = None
- self._dpdk_version = None
self._app_compile_timeout = 90
self._dpdk_kill_session = None
self._dpdk_timestamp = (
f"{str(os.getpid())}_{time.strftime('%Y%m%d%H%M%S', time.localtime())}"
)
+ self._dpdk_version = None
+ self._node_info = None
+ self._compiler_version = None
@property
def _remote_dpdk_dir(self) -> PurePath:
@@ -262,48 +355,37 @@ def run_dpdk_app(
f"{app_path} {eal_args}", timeout, verify=True
)
-
-class EalParameters(object):
- def __init__(
+ def create_interactive_shell(
self,
- lcore_list: LogicalCoreList,
- memory_channels: int,
- prefix: str,
- no_pci: bool,
- vdevs: list[VirtualDevice],
- other_eal_param: str,
- ):
+ shell_type: InteractiveApp,
+ timeout: float = SETTINGS.timeout,
+ eal_parameters: EalParameters | None = None,
+ ) -> Union[InteractiveShell, TestPmdShell]:
+ """Create a handler for an interactive session.
+
+ This method is a factory that calls a method in OSSession to create shells for
+ different DPDK applications.
+
+ Args:
+ shell_type: Enum value representing the desired application.
+ timeout: Timeout for reading output from the SSH channel. If you are
+ reading from the buffer and don't receive any data within the timeout
+ it will throw an error.
+ eal_parameters: List of EAL parameters to use to launch the app. If this
+ isn't provided, it will default to calling create_eal_parameters().
+ This is ignored for base "shell" types.
+ Returns:
+ Instance of the desired interactive application.
"""
- Generate eal parameters character string;
- :param lcore_list: the list of logical cores to use.
- :param memory_channels: the number of memory channels to use.
- :param prefix: set file prefix string, eg:
- prefix='vf'
- :param no_pci: switch of disable PCI bus eg:
- no_pci=True
- :param vdevs: virtual device list, eg:
- vdevs=[
- VirtualDevice('net_ring0'),
- VirtualDevice('net_ring1')
- ]
- :param other_eal_param: user defined DPDK eal parameters, eg:
- other_eal_param='--single-file-segments'
- """
- self._lcore_list = f"-l {lcore_list}"
- self._memory_channels = f"-n {memory_channels}"
- self._prefix = prefix
- if prefix:
- self._prefix = f"--file-prefix={prefix}"
- self._no_pci = "--no-pci" if no_pci else ""
- self._vdevs = " ".join(f"--vdev {vdev}" for vdev in vdevs)
- self._other_eal_param = other_eal_param
-
- def __str__(self) -> str:
- return (
- f"{self._lcore_list} "
- f"{self._memory_channels} "
- f"{self._prefix} "
- f"{self._no_pci} "
- f"{self._vdevs} "
- f"{self._other_eal_param}"
+ if not eal_parameters:
+ eal_parameters = self.create_eal_parameters()
+
+ # We need to append the build directory for DPDK apps
+ shell_type.path = self.remote_dpdk_build_dir.joinpath(shell_type.path)
+ default_path = self.main_session.join_remote_path(shell_type.path)
+ return self.main_session.create_interactive_shell(
+ shell_type,
+ default_path,
+ str(eal_parameters),
+ timeout,
)
diff a/dts/framework/utils.py b/dts/framework/utils.py (rejected hunks)
@@ -5,6 +5,8 @@
import sys
+REGEX_FOR_PCI_ADDRESS = "/[0-9a-fA-F]{4}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}.[0-9]{1}/"
+
def check_dts_python_version() -> None:
if sys.version_info.major < 3 or (
Checking patch dts/poetry.lock...
error: while searching for:
[[package]]
name = "attrs"
version = "22.1.0"
description = "Classes Without Boilerplate"
category = "main"
optional = false
python-versions = ">=3.5"
[package.extras]
dev = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "mypy (>=0.900,!=0.940)", "pytest-mypy-plugins", "zope.interface", "furo", "sphinx", "sphinx-notfound-page", "pre-commit", "cloudpickle"]
docs = ["furo", "sphinx", "zope.interface", "sphinx-notfound-page"]
tests = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "mypy (>=0.900,!=0.940)", "pytest-mypy-plugins", "zope.interface", "cloudpickle"]
tests_no_zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "mypy (>=0.900,!=0.940)", "pytest-mypy-plugins", "cloudpickle"]
[[package]]
name = "black"
version = "22.10.0"
description = "The uncompromising code formatter."
category = "dev"
optional = false
error: patch failed: dts/poetry.lock:1
error: while searching for:
jupyter = ["ipython (>=7.8.0)", "tokenize-rt (>=3.2.0)"]
uvloop = ["uvloop (>=0.15.2)"]
[[package]]
name = "click"
version = "8.1.3"
error: patch failed: dts/poetry.lock:33
error: while searching for:
optional = false
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7"
[[package]]
name = "isort"
version = "5.10.1"
description = "A Python utility / library to sort Python imports."
category = "dev"
optional = false
python-versions = ">=3.6.1,<4.0"
[package.extras]
pipfile_deprecated_finder = ["pipreqs", "requirementslib"]
requirements_deprecated_finder = ["pipreqs", "pip-api"]
colors = ["colorama (>=0.4.3,<0.5.0)"]
plugins = ["setuptools"]
[[package]]
error: patch failed: dts/poetry.lock:52
Hunk #4 succeeded at 156 (offset 24 lines).
error: while searching for:
[[package]]
name = "mypy-extensions"
version = "0.4.3"
description = "Experimental type system extensions for programs checked with the mypy typechecker."
category = "dev"
optional = false
python-versions = "*"
[[package]]
name = "pathspec"
version = "0.10.1"
description = "Utility library for gitignore style pattern matching of file paths."
category = "dev"
optional = false
error: patch failed: dts/poetry.lock:129
error: while searching for:
[[package]]
name = "platformdirs"
version = "2.5.2"
description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"."
category = "dev"
optional = false
python-versions = ">=3.7"
[package.extras]
docs = ["furo (>=2021.7.5b38)", "proselint (>=0.10.2)", "sphinx-autodoc-typehints (>=1.12)", "sphinx (>=4)"]
test = ["appdirs (==1.4.4)", "pytest-cov (>=2.7)", "pytest-mock (>=3.6)", "pytest (>=6)"]
[[package]]
name = "ptyprocess"
error: patch failed: dts/poetry.lock:156
error: while searching for:
[[package]]
name = "pycodestyle"
version = "2.9.1"
description = "Python style guide checker"
category = "dev"
optional = false
python-versions = ">=3.6"
[[package]]
name = "pydocstyle"
version = "6.1.1"
description = "Python docstring style checker"
category = "dev"
optional = false
python-versions = ">=3.6"
[package.dependencies]
snowballstemmer = "*"
[package.extras]
toml = ["toml"]
[[package]]
name = "pyflakes"
error: patch failed: dts/poetry.lock:176
error: while searching for:
toml = ["toml (>=0.10.2)"]
vulture = ["vulture"]
[[package]]
name = "pyrsistent"
version = "0.19.1"
description = "Persistent/Functional/Immutable data structures"
category = "main"
optional = false
error: patch failed: dts/poetry.lock:228
Hunk #9 succeeded at 380 (offset 24 lines).
Hunk #10 succeeded at 388 (offset 24 lines).
error: while searching for:
[metadata]
lock-version = "1.1"
python-versions = "^3.10"
content-hash = "a0f040b07fc6ce4deb0be078b9a88c2a465cb6bccb9e260a67e92c2403e2319f"
[metadata.files]
attrs = []
black = []
click = []
colorama = []
isort = []
jsonpatch = []
jsonpointer = []
error: patch failed: dts/poetry.lock:299
error: while searching for:
mccabe = []
mypy = []
mypy-extensions = []
pathspec = []
pexpect = [
{file = "pexpect-4.8.0-py2.py3-none-any.whl", hash = "sha256:0b48a55dcb3c05f3329815901ea4fc1537514d6ba867a152b581d69ae3710937"},
{file = "pexpect-4.8.0.tar.gz", hash = "sha256:fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c"},
]
platformdirs = [
{file = "platformdirs-2.5.2-py3-none-any.whl", hash = "sha256:027d8e83a2d7de06bbac4e5ef7e023c02b863d7ea5d079477e722bb41ab25788"},
{file = "platformdirs-2.5.2.tar.gz", hash = "sha256:58c8abb07dcb441e6ee4b11d8df0ac856038f944ab98b7be6b27b2a3c7feef19"},
]
ptyprocess = []
pycodestyle = []
pydocstyle = []
pyflakes = []
pylama = []
pyrsistent = []
pyyaml = []
snowballstemmer = []
error: patch failed: dts/poetry.lock:313
Checking patch dts/pyproject.toml...
error: while searching for:
warlock = "^2.0.1"
PyYAML = "^6.0"
types-PyYAML = "^6.0.8"
[tool.poetry.dev-dependencies]
mypy = "^0.961"
error: patch failed: dts/pyproject.toml:13
Applying patch dts/poetry.lock with 9 rejects...
Rejected hunk #1.
Rejected hunk #2.
Rejected hunk #3.
Hunk #4 applied cleanly.
Rejected hunk #5.
Rejected hunk #6.
Rejected hunk #7.
Rejected hunk #8.
Hunk #9 applied cleanly.
Hunk #10 applied cleanly.
Rejected hunk #11.
Rejected hunk #12.
Applying patch dts/pyproject.toml with 1 reject...
Rejected hunk #1.
hint: Use 'git am --show-current-patch' to see the failed patch
diff a/dts/poetry.lock b/dts/poetry.lock (rejected hunks)
@@ -1,20 +1,33 @@
[[package]]
name = "attrs"
-version = "22.1.0"
+version = "23.1.0"
description = "Classes Without Boilerplate"
category = "main"
optional = false
-python-versions = ">=3.5"
+python-versions = ">=3.7"
[package.extras]
-dev = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "mypy (>=0.900,!=0.940)", "pytest-mypy-plugins", "zope.interface", "furo", "sphinx", "sphinx-notfound-page", "pre-commit", "cloudpickle"]
-docs = ["furo", "sphinx", "zope.interface", "sphinx-notfound-page"]
-tests = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "mypy (>=0.900,!=0.940)", "pytest-mypy-plugins", "zope.interface", "cloudpickle"]
-tests_no_zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "mypy (>=0.900,!=0.940)", "pytest-mypy-plugins", "cloudpickle"]
+cov = ["attrs", "coverage[toml] (>=5.3)"]
+dev = ["attrs", "pre-commit"]
+docs = ["furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier", "zope-interface"]
+tests = ["attrs", "zope-interface"]
+tests-no-zope = ["cloudpickle", "hypothesis", "mypy (>=1.1.1)", "pympler", "pytest-mypy-plugins", "pytest-xdist", "pytest (>=4.3.0)"]
+
+[[package]]
+name = "bcrypt"
+version = "4.0.1"
+description = "Modern password hashing for your software and your servers"
+category = "main"
+optional = false
+python-versions = ">=3.6"
+
+[package.extras]
+tests = ["pytest (>=3.2.1,!=3.3.0)"]
+typecheck = ["mypy"]
[[package]]
name = "black"
-version = "22.10.0"
+version = "22.12.0"
description = "The uncompromising code formatter."
category = "dev"
optional = false
@@ -33,6 +46,17 @@ d = ["aiohttp (>=3.7.4)"]
jupyter = ["ipython (>=7.8.0)", "tokenize-rt (>=3.2.0)"]
uvloop = ["uvloop (>=0.15.2)"]
+[[package]]
+name = "cffi"
+version = "1.15.1"
+description = "Foreign Function Interface for Python calling C code."
+category = "main"
+optional = false
+python-versions = "*"
+
+[package.dependencies]
+pycparser = "*"
+
[[package]]
name = "click"
version = "8.1.3"
@@ -52,18 +76,39 @@ category = "dev"
optional = false
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7"
+[[package]]
+name = "cryptography"
+version = "41.0.1"
+description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers."
+category = "main"
+optional = false
+python-versions = ">=3.7"
+
+[package.dependencies]
+cffi = ">=1.12"
+
+[package.extras]
+docs = ["sphinx (>=5.3.0)", "sphinx-rtd-theme (>=1.1.1)"]
+docstest = ["pyenchant (>=1.6.11)", "twine (>=1.12.0)", "sphinxcontrib-spelling (>=4.0.1)"]
+nox = ["nox"]
+pep8test = ["black", "ruff", "mypy", "check-sdist"]
+sdist = ["build"]
+ssh = ["bcrypt (>=3.1.5)"]
+test = ["pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-xdist", "pretend"]
+test-randomorder = ["pytest-randomly"]
+
[[package]]
name = "isort"
-version = "5.10.1"
+version = "5.12.0"
description = "A Python utility / library to sort Python imports."
category = "dev"
optional = false
-python-versions = ">=3.6.1,<4.0"
+python-versions = ">=3.8.0"
[package.extras]
-pipfile_deprecated_finder = ["pipreqs", "requirementslib"]
-requirements_deprecated_finder = ["pipreqs", "pip-api"]
-colors = ["colorama (>=0.4.3,<0.5.0)"]
+colors = ["colorama (>=0.4.3)"]
+requirements-deprecated-finder = ["pip-api", "pipreqs"]
+pipfile-deprecated-finder = ["pip-shims (>=0.5.2)", "pipreqs", "requirementslib"]
plugins = ["setuptools"]
[[package]]
@@ -129,15 +174,33 @@ reports = ["lxml"]
[[package]]
name = "mypy-extensions"
-version = "0.4.3"
-description = "Experimental type system extensions for programs checked with the mypy typechecker."
+version = "1.0.0"
+description = "Type system extensions for programs checked with the mypy type checker."
category = "dev"
optional = false
-python-versions = "*"
+python-versions = ">=3.5"
+
+[[package]]
+name = "paramiko"
+version = "3.2.0"
+description = "SSH2 protocol library"
+category = "main"
+optional = false
+python-versions = ">=3.6"
+
+[package.dependencies]
+bcrypt = ">=3.2"
+cryptography = ">=3.3"
+pynacl = ">=1.5"
+
+[package.extras]
+all = ["pyasn1 (>=0.1.7)", "invoke (>=2.0)", "gssapi (>=1.4.1)", "pywin32 (>=2.1.8)"]
+gssapi = ["pyasn1 (>=0.1.7)", "gssapi (>=1.4.1)", "pywin32 (>=2.1.8)"]
+invoke = ["invoke (>=2.0)"]
[[package]]
name = "pathspec"
-version = "0.10.1"
+version = "0.11.1"
description = "Utility library for gitignore style pattern matching of file paths."
category = "dev"
optional = false
@@ -156,15 +219,15 @@ ptyprocess = ">=0.5"
[[package]]
name = "platformdirs"
-version = "2.5.2"
-description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"."
+version = "3.5.1"
+description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"."
category = "dev"
optional = false
python-versions = ">=3.7"
[package.extras]
-docs = ["furo (>=2021.7.5b38)", "proselint (>=0.10.2)", "sphinx-autodoc-typehints (>=1.12)", "sphinx (>=4)"]
-test = ["appdirs (==1.4.4)", "pytest-cov (>=2.7)", "pytest-mock (>=3.6)", "pytest (>=6)"]
+docs = ["furo (>=2023.3.27)", "proselint (>=0.13)", "sphinx-autodoc-typehints (>=1.23,!=1.23.4)", "sphinx (>=6.2.1)"]
+test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest-cov (>=4)", "pytest-mock (>=3.10)", "pytest (>=7.3.1)"]
[[package]]
name = "ptyprocess"
@@ -176,25 +239,33 @@ python-versions = "*"
[[package]]
name = "pycodestyle"
-version = "2.9.1"
+version = "2.10.0"
description = "Python style guide checker"
category = "dev"
optional = false
python-versions = ">=3.6"
+[[package]]
+name = "pycparser"
+version = "2.21"
+description = "C parser in Python"
+category = "main"
+optional = false
+python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
+
[[package]]
name = "pydocstyle"
-version = "6.1.1"
+version = "6.3.0"
description = "Python docstring style checker"
category = "dev"
optional = false
python-versions = ">=3.6"
[package.dependencies]
-snowballstemmer = "*"
+snowballstemmer = ">=2.2.0"
[package.extras]
-toml = ["toml"]
+toml = ["tomli (>=1.2.3)"]
[[package]]
name = "pyflakes"
@@ -228,9 +299,24 @@ tests = ["pytest (>=7.1.2)", "pytest-mypy", "eradicate (>=2.0.0)", "radon (>=5.1
toml = ["toml (>=0.10.2)"]
vulture = ["vulture"]
+[[package]]
+name = "pynacl"
+version = "1.5.0"
+description = "Python binding to the Networking and Cryptography (NaCl) library"
+category = "main"
+optional = false
+python-versions = ">=3.6"
+
+[package.dependencies]
+cffi = ">=1.4.1"
+
+[package.extras]
+docs = ["sphinx (>=1.6.5)", "sphinx-rtd-theme"]
+tests = ["pytest (>=3.2.1,!=3.3.0)", "hypothesis (>=3.27.0)"]
+
[[package]]
name = "pyrsistent"
-version = "0.19.1"
+version = "0.19.3"
description = "Persistent/Functional/Immutable data structures"
category = "main"
optional = false
@@ -299,13 +385,16 @@ jsonschema = ">=4,<5"
[metadata]
lock-version = "1.1"
python-versions = "^3.10"
-content-hash = "a0f040b07fc6ce4deb0be078b9a88c2a465cb6bccb9e260a67e92c2403e2319f"
+content-hash = "c119901b1c13b14adf9b53624430aff8720d9a3a180b028579b82c65d49474df"
[metadata.files]
attrs = []
+bcrypt = []
black = []
+cffi = []
click = []
colorama = []
+cryptography = []
isort = []
jsonpatch = []
jsonpointer = []
@@ -313,20 +402,17 @@ jsonschema = []
mccabe = []
mypy = []
mypy-extensions = []
+paramiko = []
pathspec = []
-pexpect = [
- {file = "pexpect-4.8.0-py2.py3-none-any.whl", hash = "sha256:0b48a55dcb3c05f3329815901ea4fc1537514d6ba867a152b581d69ae3710937"},
- {file = "pexpect-4.8.0.tar.gz", hash = "sha256:fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c"},
-]
-platformdirs = [
- {file = "platformdirs-2.5.2-py3-none-any.whl", hash = "sha256:027d8e83a2d7de06bbac4e5ef7e023c02b863d7ea5d079477e722bb41ab25788"},
- {file = "platformdirs-2.5.2.tar.gz", hash = "sha256:58c8abb07dcb441e6ee4b11d8df0ac856038f944ab98b7be6b27b2a3c7feef19"},
-]
+pexpect = []
+platformdirs = []
ptyprocess = []
pycodestyle = []
+pycparser = []
pydocstyle = []
pyflakes = []
pylama = []
+pynacl = []
pyrsistent = []
pyyaml = []
snowballstemmer = []
diff a/dts/pyproject.toml b/dts/pyproject.toml (rejected hunks)
@@ -13,6 +13,7 @@ pexpect = "^4.8.0"
warlock = "^2.0.1"
PyYAML = "^6.0"
types-PyYAML = "^6.0.8"
+paramiko = "^3.1.0"
[tool.poetry.dev-dependencies]
mypy = "^0.961"
https://lab.dpdk.org/results/dashboard/patchsets/27060/
UNH-IOL DPDK Community Lab
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2023-07-12 20:45 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-07-12 20:45 |WARNING| pw129505-129506 [PATCH] [v5, 2/2] dts: add paramiko to dependencies dpdklab
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).