get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 129991,
    "url": "http://patches.dpdk.org/api/patches/129991/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20230809001017.293037-27-stephen@networkplumber.org/",
    "project": {
        "id": 1,
        "url": "http://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<20230809001017.293037-27-stephen@networkplumber.org>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20230809001017.293037-27-stephen@networkplumber.org",
    "date": "2023-08-09T00:10:14",
    "name": "[v2,26/29] node: remove experimental tag",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "1ac6598ceff744c16fb41a6b885ef548e65abd4c",
    "submitter": {
        "id": 27,
        "url": "http://patches.dpdk.org/api/people/27/?format=api",
        "name": "Stephen Hemminger",
        "email": "stephen@networkplumber.org"
    },
    "delegate": {
        "id": 1,
        "url": "http://patches.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20230809001017.293037-27-stephen@networkplumber.org/mbox/",
    "series": [
        {
            "id": 29134,
            "url": "http://patches.dpdk.org/api/series/29134/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=29134",
            "date": "2023-08-09T00:09:48",
            "name": "promote many API's to stable",
            "version": 2,
            "mbox": "http://patches.dpdk.org/series/29134/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/129991/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/129991/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-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 2003843011;\n\tWed,  9 Aug 2023 02:13:15 +0200 (CEST)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 22784432E0;\n\tWed,  9 Aug 2023 02:11:02 +0200 (CEST)",
            "from mail-pl1-f171.google.com (mail-pl1-f171.google.com\n [209.85.214.171])\n by mails.dpdk.org (Postfix) with ESMTP id 8BDD6432C1\n for <dev@dpdk.org>; Wed,  9 Aug 2023 02:10:55 +0200 (CEST)",
            "by mail-pl1-f171.google.com with SMTP id\n d9443c01a7336-1bbf8cb61aeso41264155ad.2\n for <dev@dpdk.org>; Tue, 08 Aug 2023 17:10:55 -0700 (PDT)",
            "from hermes.local (204-195-127-207.wavecable.com. [204.195.127.207])\n by smtp.gmail.com with ESMTPSA id\n ix11-20020a170902f80b00b001bc676df6a9sm5745629plb.132.2023.08.08.17.10.53\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Tue, 08 Aug 2023 17:10:53 -0700 (PDT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=networkplumber-org.20221208.gappssmtp.com; s=20221208; t=1691539854;\n x=1692144654;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:from:to:cc:subject:date\n :message-id:reply-to;\n bh=zENEgugtV4mAJ7h/3C8VR7IwCGoOLFCB81iFJDnYB6o=;\n b=al3DYU+dlSy9U/kHRRQ/bssL1oYnrJc6mdzaihsbo2tKWMU0+SDz9SHg9ir+GOOser\n H3KUO3tpL+TfYHSbGpxdN8ReF4ARB7P0Nkg3gcfifzhYJ0vgIOoowOVfPnPFuGXmeVjE\n iQX581Fz6lgxyENR+HBDSRan+SkkhXhTTBuXEIsWlPRermOcfarFa/kmVh82O1PgWTGa\n /9UWmmvhRywXaVCKYnnG+KbGxm6mFZ1+7JF1aEWEe5dvN3NNpIzE8UYNjuuMvLIjg1Fn\n n1nYdBZ0CZxQRui+SMtVUAcRt7qGqu1UUqi9siEXyc627jmLap+0iIC6+8xPB0kBC9ux\n k3Zg==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20221208; t=1691539854; x=1692144654;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc\n :subject:date:message-id:reply-to;\n bh=zENEgugtV4mAJ7h/3C8VR7IwCGoOLFCB81iFJDnYB6o=;\n b=FGwhU7+egqoMoNpHVOyusdxyMI7rR2W48/TgGdZ6ErgTpbex6BeLctVb0gkVmCR4YJ\n hiitWYwR2yRhyDisbprTguEpS4V+Zisck188T1pZqRWcaB2reWY0sf6LGJvUErwjAavh\n +lMCc4HdTIurTm6rVHDu+iOBpvfvJVjKkfY73uPpQGdD+Xc0BRaYT3C71oghnwaEvQzW\n 5r6Dvv7Ds5hx3FEBnAeoaH+pGsj0b2CVnvARi3DOSnGIiBPga4WuftR1ZdKv/Tae1j4t\n miIZnavgswbVjn/CqI1Qh2xhJP2uoM2oPNYd1IpU/0IbkuiARRuSo9IUcx5eAv+ankw5\n tfXw==",
        "X-Gm-Message-State": "AOJu0YxA0NjQxXqEvy3ubeTYnRADj019AT0ah7/EgYv+nTZtsiYjWpIV\n 0L2P7lT7/gBOvRhz/crQM3mT3WMNV2q2na5QY2E16A==",
        "X-Google-Smtp-Source": "\n AGHT+IFcaeNY8xvhmZ71NR3vVZX/piojhJogGW9W8SC7SSzS0Fln7FmxjVsJWz/U84wqq5jBTJfFbg==",
        "X-Received": "by 2002:a17:902:d50a:b0:1bb:f11a:d372 with SMTP id\n b10-20020a170902d50a00b001bbf11ad372mr971231plg.40.1691539854470;\n Tue, 08 Aug 2023 17:10:54 -0700 (PDT)",
        "From": "Stephen Hemminger <stephen@networkplumber.org>",
        "To": "dev@dpdk.org",
        "Cc": "Stephen Hemminger <stephen@networkplumber.org>,\n Thomas Monjalon <thomas@monjalon.net>,\n Nithin Dabilpuram <ndabilpuram@marvell.com>,\n Pavan Nikhilesh <pbhagavatula@marvell.com>",
        "Subject": "[PATCH v2 26/29] node: remove experimental tag",
        "Date": "Tue,  8 Aug 2023 17:10:14 -0700",
        "Message-Id": "<20230809001017.293037-27-stephen@networkplumber.org>",
        "X-Mailer": "git-send-email 2.39.2",
        "In-Reply-To": "<20230809001017.293037-1-stephen@networkplumber.org>",
        "References": "<20230808173527.186042-1-stephen@networkplumber.org>\n <20230809001017.293037-1-stephen@networkplumber.org>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org"
    },
    "content": "The node library has been around long enough that experimental\ntag should be removed.  The IPv6 support was added in 23.03\nbut that is still enough time that it can be marked stable.\n\nSigned-off-by: Stephen Hemminger <stephen@networkplumber.org>\n---\n MAINTAINERS                 | 2 +-\n lib/node/rte_node_eth_api.h | 5 -----\n lib/node/rte_node_ip4_api.h | 6 ------\n lib/node/rte_node_ip6_api.h | 6 ------\n lib/node/version.map        | 2 +-\n 5 files changed, 2 insertions(+), 19 deletions(-)",
    "diff": "diff --git a/MAINTAINERS b/MAINTAINERS\nindex 75e020892471..ea6ba572a407 100644\n--- a/MAINTAINERS\n+++ b/MAINTAINERS\n@@ -1716,7 +1716,7 @@ F: app/test/test_graph*\n F: examples/l3fwd-graph/\n F: doc/guides/sample_app_ug/l3_forward_graph.rst\n \n-Nodes - EXPERIMENTAL\n+Nodes\n M: Nithin Dabilpuram <ndabilpuram@marvell.com>\n M: Pavan Nikhilesh <pbhagavatula@marvell.com>\n F: lib/node/\ndiff --git a/lib/node/rte_node_eth_api.h b/lib/node/rte_node_eth_api.h\nindex 40b2021f01f9..51a4bd394110 100644\n--- a/lib/node/rte_node_eth_api.h\n+++ b/lib/node/rte_node_eth_api.h\n@@ -8,10 +8,6 @@\n /**\n  * @file rte_node_eth_api.h\n  *\n- * @warning\n- * @b EXPERIMENTAL:\n- * All functions in this file may be changed or removed without prior notice.\n- *\n  * This API allows to setup ethdev_rx and ethdev_tx nodes\n  * and its queue associations.\n  */\n@@ -55,7 +51,6 @@ struct rte_node_ethdev_config {\n  * @return\n  *   0 on successful initialization, negative otherwise.\n  */\n-__rte_experimental\n int rte_node_eth_config(struct rte_node_ethdev_config *cfg,\n \t\t\tuint16_t cnt, uint16_t nb_graphs);\n #ifdef __cplusplus\ndiff --git a/lib/node/rte_node_ip4_api.h b/lib/node/rte_node_ip4_api.h\nindex 3397da0ae8cd..47cb13e2b3be 100644\n--- a/lib/node/rte_node_ip4_api.h\n+++ b/lib/node/rte_node_ip4_api.h\n@@ -8,10 +8,6 @@\n /**\n  * @file rte_node_ip4_api.h\n  *\n- * @warning\n- * @b EXPERIMENTAL:\n- * All functions in this file may be changed or removed without prior notice.\n- *\n  * This API allows to do control path functions of ip4_* nodes\n  * like ip4_lookup, ip4_rewrite.\n  */\n@@ -49,7 +45,6 @@ enum rte_node_ip4_lookup_next {\n  * @return\n  *   0 on success, negative otherwise.\n  */\n-__rte_experimental\n int rte_node_ip4_route_add(uint32_t ip, uint8_t depth, uint16_t next_hop,\n \t\t\t   enum rte_node_ip4_lookup_next next_node);\n \n@@ -68,7 +63,6 @@ int rte_node_ip4_route_add(uint32_t ip, uint8_t depth, uint16_t next_hop,\n  * @return\n  *   0 on success, negative otherwise.\n  */\n-__rte_experimental\n int rte_node_ip4_rewrite_add(uint16_t next_hop, uint8_t *rewrite_data,\n \t\t\t     uint8_t rewrite_len, uint16_t dst_port);\n \ndiff --git a/lib/node/rte_node_ip6_api.h b/lib/node/rte_node_ip6_api.h\nindex f3b5a1002a02..da7be364de34 100644\n--- a/lib/node/rte_node_ip6_api.h\n+++ b/lib/node/rte_node_ip6_api.h\n@@ -8,10 +8,6 @@\n /**\n  * @file rte_node_ip6_api.h\n  *\n- * @warning\n- * @b EXPERIMENTAL:\n- * All functions in this file may be changed or removed without prior notice.\n- *\n  * This API allows to do control path functions of ip6_* nodes\n  * like ip6_lookup, ip6_rewrite.\n  */\n@@ -49,7 +45,6 @@ enum rte_node_ip6_lookup_next {\n  * @return\n  *   0 on success, negative otherwise.\n  */\n-__rte_experimental\n int rte_node_ip6_route_add(const uint8_t *ip, uint8_t depth, uint16_t next_hop,\n \t\t\t   enum rte_node_ip6_lookup_next next_node);\n \n@@ -68,7 +63,6 @@ int rte_node_ip6_route_add(const uint8_t *ip, uint8_t depth, uint16_t next_hop,\n  * @return\n  *   0 on success, negative otherwise.\n  */\n-__rte_experimental\n int rte_node_ip6_rewrite_add(uint16_t next_hop, uint8_t *rewrite_data,\n \t\t\t     uint8_t rewrite_len, uint16_t dst_port);\n \ndiff --git a/lib/node/version.map b/lib/node/version.map\nindex 40df308bfe8a..55958f577560 100644\n--- a/lib/node/version.map\n+++ b/lib/node/version.map\n@@ -1,4 +1,4 @@\n-EXPERIMENTAL {\n+DPDK_24 {\n \tglobal:\n \n \trte_node_eth_config;\n",
    "prefixes": [
        "v2",
        "26/29"
    ]
}