From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 9850342E58 for ; Wed, 12 Jul 2023 22:45:20 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 90F08400D5; Wed, 12 Jul 2023 22:45:20 +0200 (CEST) Received: from mail-il1-f227.google.com (mail-il1-f227.google.com [209.85.166.227]) by mails.dpdk.org (Postfix) with ESMTP id F2027400D5 for ; Wed, 12 Jul 2023 22:45:18 +0200 (CEST) Received: by mail-il1-f227.google.com with SMTP id e9e14a558f8ab-34611de0ee4so28211585ab.0 for ; Wed, 12 Jul 2023 13:45:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iol.unh.edu; s=unh-iol; t=1689194718; x=1691786718; h=cc:to:from:subject:message-id:date:from:to:cc:subject:date :message-id:reply-to; bh=Yl7wWQay3GVRh30+qodh8rJsUbzN5vYRTfXZDIiz9IA=; b=E7C09TRfscO0jdUCfBNE0HYSVTzSaWL4UbAz9LU/+T0UEHJKVJmGEucGdgRGrhYDC6 AeXhRbsK29nZ48a1LxTzNb/YWlunJ87yjh3RQMP7wfQs7Nl1h8g6VGG4b62ldWqDc1yd mT9PaqJGle5dRzwecWu/233DVi6ZS5cvt2k+I= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1689194718; x=1691786718; h=cc:to:from:subject:message-id:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Yl7wWQay3GVRh30+qodh8rJsUbzN5vYRTfXZDIiz9IA=; b=LwdX5qnxPHGgBGS6IeAsLa2I/jLRKnwY1u4FKr4tgCz9l8suF3NGPqbM/mdf1xIo+s YxTWkqjL2mXQgUr8A5AeYUGv9L+CuCtEi+TM3h5oYh3q6mrG4ErJ/hYOAfYb0/ZsHJwd kGQvKsCFkLoIQOvJv0nTUFyjXy4Nz6yHgLFtS3MyTxw8fGiTKDhGfB5qoXPKSC5YJBSg 8Vlfb6snEgMbW0wYw55+V2RsdKJyGAC/x3GVA0ESTF6N2mdhRtPdTPRMUe7bIHWrpOQQ 60GAqyimEgAgxhlwtm1QCSqLVjToHSF67YhPZkr+keFRAU77mABa9YxMkPI7kBVtAmXv 6bnQ== X-Gm-Message-State: ABy/qLZ9E0CqaZUDA2MVFWkLydwPEYJf36s+bwSloYnuwHlpf3YJBraC iijYM6fVY1+QWjTTh6Q9B+ZWUY23pIHrmqbV7WE8V6E0nIb5JozVQQtzpg== X-Google-Smtp-Source: APBJJlFEuti3sNObdSrBYvGE67lxnUEoBZJFsnPRnVpciFjLyW14+/EJXR1koawPSwgNqXnsWgz2MPfFciqJ X-Received: by 2002:a92:907:0:b0:346:4c80:7fdb with SMTP id y7-20020a920907000000b003464c807fdbmr12835184ilg.5.1689194718338; Wed, 12 Jul 2023 13:45:18 -0700 (PDT) Received: from postal.iol.unh.edu (postal.iol.unh.edu. [132.177.123.84]) by smtp-relay.gmail.com with ESMTPS id i9-20020a056e02054900b00345929e5a5fsm402016ils.70.2023.07.12.13.45.18 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 12 Jul 2023 13:45:18 -0700 (PDT) X-Relaying-Domain: iol.unh.edu Date: Wed, 12 Jul 2023 13:45:18 -0700 (PDT) Message-ID: <64af10de.050a0220.867b.9d89SMTPIN_ADDED_MISSING@mx.google.com> Received: from [172.17.0.4] (unknown [172.18.0.217]) by postal.iol.unh.edu (Postfix) with ESMTP id B6FC9605246B; Wed, 12 Jul 2023 16:45:17 -0400 (EDT) Subject: |WARNING| pw129505-129506 [PATCH] [v5, 2/2] dts: add paramiko to dependencies From: dpdklab@iol.unh.edu To: test-report@dpdk.org Cc: dpdk-test-reports@iol.unh.edu Content-Type: text/plain X-BeenThere: test-report@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: automatic DPDK test reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: test-report-bounces@dpdk.org Test-Label: iol-testing Test-Status: WARNING http://dpdk.org/patch/129505 _apply patch failure_ Submitter: Jeremy Spewock 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