get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 85278,
    "url": "https://patches.dpdk.org/api/patches/85278/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/20201217090553.3503550-1-thomas@monjalon.net/",
    "project": {
        "id": 1,
        "url": "https://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": "<20201217090553.3503550-1-thomas@monjalon.net>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20201217090553.3503550-1-thomas@monjalon.net",
    "date": "2020-12-17T09:05:53",
    "name": "[v2,1/1] devtools: adjust verbosity of ABI check",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "a499ebe2e21b21dfd50b2ebf1dd28cbd7fb2799f",
    "submitter": {
        "id": 685,
        "url": "https://patches.dpdk.org/api/people/685/?format=api",
        "name": "Thomas Monjalon",
        "email": "thomas@monjalon.net"
    },
    "delegate": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/20201217090553.3503550-1-thomas@monjalon.net/mbox/",
    "series": [
        {
            "id": 14343,
            "url": "https://patches.dpdk.org/api/series/14343/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=14343",
            "date": "2020-12-17T09:05:53",
            "name": "[v2,1/1] devtools: adjust verbosity of ABI check",
            "version": 2,
            "mbox": "https://patches.dpdk.org/series/14343/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/85278/comments/",
    "check": "warning",
    "checks": "https://patches.dpdk.org/api/patches/85278/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 dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 94D18A09F0;\n\tThu, 17 Dec 2020 10:06:10 +0100 (CET)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id D0921C9E7;\n\tThu, 17 Dec 2020 10:06:08 +0100 (CET)",
            "from wout3-smtp.messagingengine.com (wout3-smtp.messagingengine.com\n [64.147.123.19]) by dpdk.org (Postfix) with ESMTP id 8C1B9C9E4\n for <dev@dpdk.org>; Thu, 17 Dec 2020 10:06:07 +0100 (CET)",
            "from compute2.internal (compute2.nyi.internal [10.202.2.42])\n by mailout.west.internal (Postfix) with ESMTP id 3723B858;\n Thu, 17 Dec 2020 04:06:04 -0500 (EST)",
            "from mailfrontend1 ([10.202.2.162])\n by compute2.internal (MEProxy); Thu, 17 Dec 2020 04:06:04 -0500",
            "from xps.monjalon.net (184.203.134.77.rev.sfr.net [77.134.203.184])\n by mail.messagingengine.com (Postfix) with ESMTPA id D8422240065;\n Thu, 17 Dec 2020 04:06:01 -0500 (EST)"
        ],
        "DKIM-Signature": [
            "v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h=\n from:to:cc:subject:date:message-id:in-reply-to:references\n :mime-version:content-transfer-encoding; s=fm3; bh=GBOMd/yGx/tOi\n xkd5JQ55Mg30wKmqgLQUoT9Z+xZspE=; b=BKap9i8rigSxXqjbsL/fD6Ctirhb7\n G6YU3DXjjCAngz/WHSSTDAubjk2gsGmJDg7Oo0X5/+YTAl0CleT3bCWGDpVUetjq\n KtS8XSjM0gZuTkToW2NJv6bXJ24Hjdzh5oNYz4vI3uYVXBpmnL+99F3hWY0wLt5o\n IG5HhMwOvG076tL/bcMKAyK91eA52y1ZT5VX+tMGb/RDtGt7S6TFJQW5gg4jRrqB\n DKxZf87qHcEipfu9vWIAamW3yyKm3RQxk7gRL/tqdEjsHfjjtWFtf88O//lrMwEm\n +hN6Ci2j16VqcH9dmqLcgvw0XcE0NZ6lz2Tj+8bpWhmR/GYhv18xiu2dQ==",
            "v=1; a=rsa-sha256; c=relaxed/relaxed; d=\n messagingengine.com; h=cc:content-transfer-encoding:date:from\n :in-reply-to:message-id:mime-version:references:subject:to\n :x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=\n fm1; bh=GBOMd/yGx/tOixkd5JQ55Mg30wKmqgLQUoT9Z+xZspE=; b=UFb8gxP3\n K1xNsARGpRObMUP3o4AmYPEYku8MJNWcUVD5xBz09DjkCo8mojHujOWIpf6PaOos\n Gd1chx0mwF2kltnrYNl5rXNb4a5Bzj6VXIr1DHFuJHnNC8ew3wIm8CWepSqrR05O\n BuqmZdQHfYNW7enB7aJvr2uCz0Tz5H5S84cFLVtGYYoXqCrwYm7dvcsuafU0srwh\n p3cQF8v/qgF1i5xZovtKyRiB6VbBH2f3OjY6G68sNuBEzutGkxXpznZ0/xxo3iL3\n 3CHnBZ2yEZXKc4xLqxBdAo8aCrOPy/flvOmusHZHL/m/kwp/aaVIOJkfXCwzie6T\n a6k6fxBzE5Akyg=="
        ],
        "X-ME-Sender": "<xms:eh_bX-m7-cWNJjoL9oEun1wJMjfHT5rM1rZCSluMzpS1ytBePh5duA>\n <xme:eh_bX1106joDDXtKFgclwjhaEIxCiM517F_veutuZ9luNZfC5jAQ4-DuCSfnU3ZoT\n obgNoHGFuJnWHwY_A>",
        "X-ME-Proxy-Cause": "\n gggruggvucftvghtrhhoucdtuddrgedujedrudelfedguddvlecutefuodetggdotefrod\n ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh\n necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd\n enucfjughrpefhvffufffkofgjfhgggfestdekredtredttdenucfhrhhomhepvfhhohhm\n rghsucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenuc\n ggtffrrghtthgvrhhnpedvhefgiedvjeegtdevheefhfetleefgfeivefgffevfeejgedt\n gfeutdehtdegveenucfkphepjeejrddufeegrddvtdefrddukeegnecuvehluhhsthgvrh\n fuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepthhhohhmrghssehmohhnjhgr\n lhhonhdrnhgvth",
        "X-ME-Proxy": "<xmx:eh_bX8pxe50ILt-ZYyWotHzC0lO37cu12r-lMiuXBDPAgL6Z33IoHg>\n <xmx:eh_bXylb5kyQxY-02xVCR8IRgiRaiuFenk25qUYshMyaSn5d6RgBzA>\n <xmx:eh_bX81qC4g3ifs8Ol5uLalX7kbIhfDhp-nrHv537I1spwAREpSbPA>\n <xmx:ex_bX6AkOiAkEbAW8Z3xUtrFfkg4wHgpHD3iTGPhWy16GkIeoU2WdA>",
        "From": "Thomas Monjalon <thomas@monjalon.net>",
        "To": "dev@dpdk.org",
        "Cc": "david.marchand@redhat.com, bruce.richardson@intel.com,\n Ray Kinsella <mdr@ashroe.eu>, Neil Horman <nhorman@tuxdriver.com>",
        "Date": "Thu, 17 Dec 2020 10:05:53 +0100",
        "Message-Id": "<20201217090553.3503550-1-thomas@monjalon.net>",
        "X-Mailer": "git-send-email 2.29.2",
        "In-Reply-To": "<20201207173235.1397351-1-thomas@monjalon.net>",
        "References": "<20201207173235.1397351-1-thomas@monjalon.net>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[dpdk-dev] [PATCH v2 1/1] devtools: adjust verbosity of ABI check",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "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",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "The scripts gen-abi.sh and check-abi.sh are updated\nto print error messages to stderr so they are likely never ignored.\n\nWhen called from test-meson-builds.sh, the standard messages on stdout\ncan be more quiet depending on the verbosity settings.\nThe beginning of the ABI check is announced in verbose mode.\nThe commands are printed in very verbose mode.\nThe check result details are available in verbose mode.\n\nSigned-off-by: Thomas Monjalon <thomas@monjalon.net>\n---\nv2: remove abidiff command from stdout (already printed on error)\n---\n devtools/check-abi.sh         | 20 ++++++++++----------\n devtools/gen-abi.sh           |  4 ++--\n devtools/test-meson-builds.sh |  9 +++++++--\n 3 files changed, 19 insertions(+), 14 deletions(-)",
    "diff": "diff --git a/devtools/check-abi.sh b/devtools/check-abi.sh\nindex ab6748cfbc..9835e346da 100755\n--- a/devtools/check-abi.sh\n+++ b/devtools/check-abi.sh\n@@ -3,7 +3,7 @@\n # Copyright (c) 2019 Red Hat, Inc.\n \n if [ $# != 2 ] && [ $# != 3 ]; then\n-\techo \"Usage: $0 refdir newdir [warnonly]\"\n+\techo \"Usage: $0 refdir newdir [warnonly]\" >&2\n \texit 1\n fi\n \n@@ -13,23 +13,23 @@ warnonly=${3:-}\n ABIDIFF_OPTIONS=\"--suppr $(dirname $0)/libabigail.abignore --no-added-syms\"\n \n if [ ! -d $refdir ]; then\n-\techo \"Error: reference directory '$refdir' does not exist.\"\n+\techo \"Error: reference directory '$refdir' does not exist.\" >&2\n \texit 1\n fi\n incdir=$(find $refdir -type d -a -name include)\n if [ -z \"$incdir\" ] || [ ! -e \"$incdir\" ]; then\n-\techo \"WARNING: could not identify a include directory for $refdir, expect false positives...\"\n+\techo \"WARNING: could not identify an include directory for $refdir, expect false positives...\" >&2\n else\n \tABIDIFF_OPTIONS=\"$ABIDIFF_OPTIONS --headers-dir1 $incdir\"\n fi\n \n if [ ! -d $newdir ]; then\n-\techo \"Error: directory to check '$newdir' does not exist.\"\n+\techo \"Error: directory to check '$newdir' does not exist.\" >&2\n \texit 1\n fi\n incdir2=$(find $newdir -type d -a -name include)\n if [ -z \"$incdir2\" ] || [ ! -e \"$incdir2\" ]; then\n-\techo \"WARNING: could not identify a include directory for $newdir, expect false positives...\"\n+\techo \"WARNING: could not identify an include directory for $newdir, expect false positives...\" >&2\n else\n \tABIDIFF_OPTIONS=\"$ABIDIFF_OPTIONS --headers-dir2 $incdir2\"\n fi\n@@ -46,23 +46,23 @@ for dump in $(find $refdir -name \"*.dump\"); do\n \tfi\n \tdump2=$(find $newdir -name $name)\n \tif [ -z \"$dump2\" ] || [ ! -e \"$dump2\" ]; then\n-\t\techo \"Error: can't find $name in $newdir\"\n+\t\techo \"Error: cannot find $name in $newdir\" >&2\n \t\terror=1\n \t\tcontinue\n \tfi\n \tabidiff $ABIDIFF_OPTIONS $dump $dump2 || {\n \t\tabiret=$?\n-\t\techo \"Error: ABI issue reported for 'abidiff $ABIDIFF_OPTIONS $dump $dump2'\"\n+\t\techo \"Error: ABI issue reported for 'abidiff $ABIDIFF_OPTIONS $dump $dump2'\" >&2\n \t\terror=1\n \t\techo\n \t\tif [ $(($abiret & 3)) -ne 0 ]; then\n-\t\t\techo \"ABIDIFF_ERROR|ABIDIFF_USAGE_ERROR, this could be a script or environment issue.\"\n+\t\t\techo \"ABIDIFF_ERROR|ABIDIFF_USAGE_ERROR, this could be a script or environment issue.\" >&2\n \t\tfi\n \t\tif [ $(($abiret & 4)) -ne 0 ]; then\n-\t\t\techo \"ABIDIFF_ABI_CHANGE, this change requires a review (abidiff flagged this as a potential issue).\"\n+\t\t\techo \"ABIDIFF_ABI_CHANGE, this change requires a review (abidiff flagged this as a potential issue).\" >&2\n \t\tfi\n \t\tif [ $(($abiret & 8)) -ne 0 ]; then\n-\t\t\techo \"ABIDIFF_ABI_INCOMPATIBLE_CHANGE, this change breaks the ABI.\"\n+\t\t\techo \"ABIDIFF_ABI_INCOMPATIBLE_CHANGE, this change breaks the ABI.\" >&2\n \t\tfi\n \t\techo\n \t}\ndiff --git a/devtools/gen-abi.sh b/devtools/gen-abi.sh\nindex c44b0e228a..f15a3b9aaf 100755\n--- a/devtools/gen-abi.sh\n+++ b/devtools/gen-abi.sh\n@@ -3,13 +3,13 @@\n # Copyright (c) 2019 Red Hat, Inc.\n \n if [ $# != 1 ]; then\n-\techo \"Usage: $0 installdir\"\n+\techo \"Usage: $0 installdir\" >&2\n \texit 1\n fi\n \n installdir=$1\n if [ ! -d $installdir ]; then\n-\techo \"Error: install directory '$installdir' does not exist.\"\n+\techo \"Error: install directory '$installdir' does not exist.\" >&2\n \texit 1\n fi\n \ndiff --git a/devtools/test-meson-builds.sh b/devtools/test-meson-builds.sh\nindex ed44d4ffb1..16a81b6241 100755\n--- a/devtools/test-meson-builds.sh\n+++ b/devtools/test-meson-builds.sh\n@@ -194,10 +194,15 @@ build () # <directory> <target compiler | cross file> <meson options>\n \n \t\tinstall_target $builds_dir/$targetdir \\\n \t\t\t$(readlink -f $builds_dir/$targetdir/install)\n+\t\techo \"Checking ABI compatibility of $targetdir\" >&$verbose\n+\t\techo $srcdir/devtools/gen-abi.sh \\\n+\t\t\t$(readlink -f $builds_dir/$targetdir/install) >&$veryverbose\n \t\t$srcdir/devtools/gen-abi.sh \\\n-\t\t\t$(readlink -f $builds_dir/$targetdir/install)\n+\t\t\t$(readlink -f $builds_dir/$targetdir/install) >&$veryverbose\n+\t\techo $srcdir/devtools/check-abi.sh $abirefdir/$targetdir \\\n+\t\t\t$(readlink -f $builds_dir/$targetdir/install) >&$veryverbose\n \t\t$srcdir/devtools/check-abi.sh $abirefdir/$targetdir \\\n-\t\t\t$(readlink -f $builds_dir/$targetdir/install)\n+\t\t\t$(readlink -f $builds_dir/$targetdir/install) >&$verbose\n \tfi\n }\n \n",
    "prefixes": [
        "v2",
        "1/1"
    ]
}