get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/108685/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 108685,
    "url": "https://patches.dpdk.org/api/patches/108685/?format=api",
    "web_url": "https://patches.dpdk.org/project/dts/patch/20220311132918.1272571-1-lijuan.tu@intel.com/",
    "project": {
        "id": 3,
        "url": "https://patches.dpdk.org/api/projects/3/?format=api",
        "name": "DTS",
        "link_name": "dts",
        "list_id": "dts.dpdk.org",
        "list_email": "dts@dpdk.org",
        "web_url": "",
        "scm_url": "git://dpdk.org/tools/dts",
        "webscm_url": "http://git.dpdk.org/tools/dts/",
        "list_archive_url": "https://inbox.dpdk.org/dts",
        "list_archive_url_format": "https://inbox.dpdk.org/dts/{}",
        "commit_url_format": ""
    },
    "msgid": "<20220311132918.1272571-1-lijuan.tu@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dts/20220311132918.1272571-1-lijuan.tu@intel.com",
    "date": "2022-03-11T13:29:18",
    "name": "remove dep/scapy_modules",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "3ac0e5e198cc3a27ef23a4c32f1841fd39b91175",
    "submitter": {
        "id": 1098,
        "url": "https://patches.dpdk.org/api/people/1098/?format=api",
        "name": "Tu, Lijuan",
        "email": "lijuan.tu@intel.com"
    },
    "delegate": null,
    "mbox": "https://patches.dpdk.org/project/dts/patch/20220311132918.1272571-1-lijuan.tu@intel.com/mbox/",
    "series": [
        {
            "id": 22120,
            "url": "https://patches.dpdk.org/api/series/22120/?format=api",
            "web_url": "https://patches.dpdk.org/project/dts/list/?series=22120",
            "date": "2022-03-11T13:29:18",
            "name": "remove dep/scapy_modules",
            "version": 1,
            "mbox": "https://patches.dpdk.org/series/22120/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/108685/comments/",
    "check": "fail",
    "checks": "https://patches.dpdk.org/api/patches/108685/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dts-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 49F18A00C2;\n\tFri, 11 Mar 2022 14:29:28 +0100 (CET)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 11B6240140;\n\tFri, 11 Mar 2022 14:29:28 +0100 (CET)",
            "from mga07.intel.com (mga07.intel.com [134.134.136.100])\n by mails.dpdk.org (Postfix) with ESMTP id ED52440042\n for <dts@dpdk.org>; Fri, 11 Mar 2022 14:29:26 +0100 (CET)",
            "from orsmga008.jf.intel.com ([10.7.209.65])\n by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 11 Mar 2022 05:29:25 -0800",
            "from dpdk-lijuan-1.sh.intel.com ([10.67.119.208])\n by orsmga008.jf.intel.com with ESMTP; 11 Mar 2022 05:29:24 -0800"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple;\n d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n t=1647005367; x=1678541367;\n h=from:to:cc:subject:date:message-id:mime-version:\n content-transfer-encoding;\n bh=b/pDbI5WGqvkdZ6ZqSeBD8gJxE/2xu9cUqAzIgcdv48=;\n b=MfYaV0lsyc5BpFFqtPvTthw+REpH8VLw336+6zIu+3+q/Kiz2eEW1FQ1\n Sst+YUXPI+tCfbBYUp6Bw0AmbM9bbRN9Q58pNM54llYU18vXdy0o/vALU\n Vt+K6vXDdRx1gsJa9s8C24auzPRz/byQ+Ocq8qxTNehJr/udM5byvoP0e\n PHt5LLIPXhng9zvZC8MPY5QNsYbmoPaMy833zEfr0Y9R9o4wZ+HsmYiGn\n YjT8bvUQEPLpGwNQD1gotQGXevez7MzvIXggCHSTXqGY6gVkmO97eU5Ci\n VjUEB8WMZps7KFRhIL2I8Mc8PrGeTa192AShfD0Qh+6PsmGa6fofm8L7u A==;",
        "X-IronPort-AV": [
            "E=McAfee;i=\"6200,9189,10282\"; a=\"318793645\"",
            "E=Sophos;i=\"5.90,173,1643702400\"; d=\"scan'208\";a=\"318793645\"",
            "E=Sophos;i=\"5.90,173,1643702400\"; d=\"scan'208\";a=\"555309864\""
        ],
        "X-ExtLoop1": "1",
        "From": "Lijuan Tu <lijuan.tu@intel.com>",
        "To": "junx.dong@intel.com",
        "Cc": "dts@dpdk.org,\n\tLijuan Tu <lijuan.tu@intel.com>",
        "Subject": "[PATCH] remove dep/scapy_modules",
        "Date": "Fri, 11 Mar 2022 21:29:18 +0800",
        "Message-Id": "<20220311132918.1272571-1-lijuan.tu@intel.com>",
        "X-Mailer": "git-send-email 2.25.1",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "X-BeenThere": "dts@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "test suite reviews and discussions <dts.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dts>,\n <mailto:dts-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dts/>",
        "List-Post": "<mailto:dts@dpdk.org>",
        "List-Help": "<mailto:dts-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dts>,\n <mailto:dts-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dts-bounces@dpdk.org"
    },
    "content": "As dot1br removed, the scapy_modules is retired.\n\nFixes: 5bdc6eee4cc7 (\"framework/*: Remove Dot1BR related code\")\n\nSigned-off-by: Lijuan Tu <lijuan.tu@intel.com>\n---\n dep/scapy_modules/Dot1BR.py                  | 34 --------------------\n dep/scapy_modules/__init__.py                | 30 -----------------\n framework/settings.py                        |  1 -\n framework/tester.py                          | 12 -------\n tests/TestSuite_vxlan_gpe_support_in_i40e.py |  5 ---\n 5 files changed, 82 deletions(-)\n delete mode 100644 dep/scapy_modules/Dot1BR.py\n delete mode 100644 dep/scapy_modules/__init__.py",
    "diff": "diff --git a/dep/scapy_modules/Dot1BR.py b/dep/scapy_modules/Dot1BR.py\ndeleted file mode 100644\nindex 162ac7dc..00000000\n--- a/dep/scapy_modules/Dot1BR.py\n+++ /dev/null\n@@ -1,34 +0,0 @@\n-## This file is part of Scapy\n-## See http://www.secdev.org/projects/scapy for more informations\n-## Copyright (C) Philippe Biondi <phil@secdev.org>\n-## This program is published under a GPLv2 license\n-\n-## Copyright (c) 2016 Marvin liu <yong.liu@intel.com>\n-\n-\"\"\"\n-VBPE (virtual brige port extenstion)\n-\"\"\"\n-\n-from scapy.data import ETHER_TYPES\n-from scapy.fields import *\n-from scapy.layers.l2 import Ether\n-from scapy.packet import *\n-\n-\n-class Dot1BR(Packet):\n-    name = \"802.1BR\"\n-    aliastypes = [ Ether ]\n-    fields_desc =  [\n-                     BitField(\"EPCP\", 0, 3),\n-                     BitField(\"EEDI\", 0, 1),\n-                     BitField(\"IngressECIDbase\", 0, 12),\n-                     BitField(\"Reserverd\", 0, 2),\n-                     BitField(\"GRP\", 0, 2),\n-                     BitField(\"ECIDbase\", 0, 12),\n-                     BitField(\"IngressECIDext\", 0, 8),\n-                     BitField(\"ECIDext\", 0, 8),\n-                     XShortEnumField(\"type\", 0x0000, ETHER_TYPES) ]\n-    def mysummary(self):\n-        return self.sprintf(\"802.1BR E-CID %Ingress_E-CID_base%\")\n-\n-bind_layers(Ether, Dot1BR, type=0x893F)\ndiff --git a/dep/scapy_modules/__init__.py b/dep/scapy_modules/__init__.py\ndeleted file mode 100644\nindex ae0043b7..00000000\n--- a/dep/scapy_modules/__init__.py\n+++ /dev/null\n@@ -1,30 +0,0 @@\n-#!/usr/bin/python3\n-# BSD LICENSE\n-#\n-# Copyright (c) 2021 PANTHEON.tech s.r.o.\n-#\n-# Redistribution and use in source and binary forms, with or without\n-# modification, are permitted provided that the following conditions\n-# are met:\n-#\n-#   * Redistributions of source code must retain the above copyright\n-#     notice, this list of conditions and the following disclaimer.\n-#   * Redistributions in binary form must reproduce the above copyright\n-#     notice, this list of conditions and the following disclaimer in\n-#     the documentation and/or other materials provided with the\n-#     distribution.\n-#   * Neither the name of PANTHEON.tech s.r.o. nor the names of its\n-#     contributors may be used to endorse or promote products derived\n-#     from this software without specific prior written permission.\n-#\n-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n-# \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ndiff --git a/framework/settings.py b/framework/settings.py\nindex 8b06ffac..7399a774 100644\n--- a/framework/settings.py\n+++ b/framework/settings.py\n@@ -43,7 +43,6 @@ FOLDERS = {\n     'Depends': 'dep',\n     'Output': 'output',\n     'NicDriver': 'nics',\n-    'scapy_modules': 'scapy_modules'\n }\n \n \"\"\"\ndiff --git a/framework/tester.py b/framework/tester.py\nindex 636129cf..bd903ce6 100644\n--- a/framework/tester.py\n+++ b/framework/tester.py\n@@ -106,18 +106,6 @@ class Tester(Crb):\n         session = self.create_session(session_name)\n         self.scapy_sessions_li.append(session)\n         session.send_expect('scapy', '>>> ')\n-        file_dir = os.path.dirname(__file__).split(os.path.sep)\n-        lib_path = os.path.sep.join(file_dir[:-1]) + '/dep/scapy_modules/'\n-\n-        # get contrib module path on tester\n-        scapy_module_path = session.session.send_expect(\"os.path.dirname(sys.modules['scapy'].__file__)\", '>>>')\n-        contrib_module_path = scapy_module_path.replace(\"'\", \"\") + '/contrib'\n-\n-        # import scapy moudle to scapy APP\n-        out = session.session.send_expect(get_scapy_module_impcmd(), '>>> ')\n-        if 'ImportError' in out:\n-            session.logger.warning(f'entering import error: {out}')\n-\n         return session\n \n     def check_scapy_version(self):\ndiff --git a/tests/TestSuite_vxlan_gpe_support_in_i40e.py b/tests/TestSuite_vxlan_gpe_support_in_i40e.py\nindex a2002247..fe0a809c 100644\n--- a/tests/TestSuite_vxlan_gpe_support_in_i40e.py\n+++ b/tests/TestSuite_vxlan_gpe_support_in_i40e.py\n@@ -122,11 +122,6 @@ class VxlanGpeTestConfig(object):\n         \"\"\"\n         Send vxlan pcap file by iface\n         \"\"\"\n-        # load vxlan module to scapy\n-        cwd = os.getcwd()\n-        dir_vxlan_module = cwd + r'/' + FOLDERS['Depends'] + r'/' + FOLDERS['scapy_modules']\n-        self.test_case.tester.scapy_append(\"sys.path.append('%s')\" % dir_vxlan_module)\n-        self.test_case.tester.scapy_append(\"from scapy.layers.vxlan import VXLAN\")\n         self.test_case.tester.scapy_append(\n             'pcap = rdpcap(\"%s\")' % self.pcap_file)\n         self.test_case.tester.scapy_append(\n",
    "prefixes": []
}