get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 96800,
    "url": "https://patches.dpdk.org/api/patches/96800/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/20210811112207.370348-2-xuemingl@nvidia.com/",
    "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": "<20210811112207.370348-2-xuemingl@nvidia.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20210811112207.370348-2-xuemingl@nvidia.com",
    "date": "2021-08-11T11:22:06",
    "name": "[v3,2/2] devtools: fix patches missing if range newer than HEAD",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "ccb07818027c8a8e1b668ef7a568f583658c6846",
    "submitter": {
        "id": 1904,
        "url": "https://patches.dpdk.org/api/people/1904/?format=api",
        "name": "Xueming Li",
        "email": "xuemingl@nvidia.com"
    },
    "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/20210811112207.370348-2-xuemingl@nvidia.com/mbox/",
    "series": [
        {
            "id": 18254,
            "url": "https://patches.dpdk.org/api/series/18254/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=18254",
            "date": "2021-08-11T11:22:05",
            "name": "[v3,1/2] devtools: fix version pattern for fix search",
            "version": 3,
            "mbox": "https://patches.dpdk.org/series/18254/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/96800/comments/",
    "check": "fail",
    "checks": "https://patches.dpdk.org/api/patches/96800/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 3CB50A0547;\n\tWed, 11 Aug 2021 13:22:38 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id C8B12411E8;\n\tWed, 11 Aug 2021 13:22:34 +0200 (CEST)",
            "from NAM02-BN1-obe.outbound.protection.outlook.com\n (mail-bn1nam07on2074.outbound.protection.outlook.com [40.107.212.74])\n by mails.dpdk.org (Postfix) with ESMTP id 85C5A411E7;\n Wed, 11 Aug 2021 13:22:33 +0200 (CEST)",
            "from MW4P222CA0007.NAMP222.PROD.OUTLOOK.COM (2603:10b6:303:114::12)\n by DM6PR12MB4418.namprd12.prod.outlook.com (2603:10b6:5:28e::9) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4394.17; Wed, 11 Aug\n 2021 11:22:32 +0000",
            "from CO1NAM11FT026.eop-nam11.prod.protection.outlook.com\n (2603:10b6:303:114:cafe::47) by MW4P222CA0007.outlook.office365.com\n (2603:10b6:303:114::12) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4415.16 via Frontend\n Transport; Wed, 11 Aug 2021 11:22:32 +0000",
            "from mail.nvidia.com (216.228.112.34) by\n CO1NAM11FT026.mail.protection.outlook.com (10.13.175.67) with Microsoft SMTP\n Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id\n 15.20.4415.14 via Frontend Transport; Wed, 11 Aug 2021 11:22:31 +0000",
            "from nvidia.com (172.20.187.5) by HQMAIL107.nvidia.com\n (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 11 Aug\n 2021 11:22:27 +0000"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=bvme0h4Qda38JjG0gJLnxzZem33DZPxWCqski+dELoHKj1XrmHLuY9+aAO3Bs0OV3dDnQQr9AmqZHPsrS0brpMxEzX7hWNGuTfFeELUYRusX+R0Qzgg6KPYPCxXZc7INgcgP5aapab35PwxVxC5wRTenTwK54T1aDTRsR6WLF+G2wRO/Pg9PNNIq58QpVYl6NKJrNAx9WtQc+0Ho5KHKbKI+2K5iU5dv8bU/2vIYkvZhZfQkMacsqWpgabhD71KESIbtyuJGgXEOkPIqS3NlmdZWKLdahj3j0T7h5wJibS0MAGKgKNiSqfXiyTBojGyYDsFoTIc/SECH2vJiCpiRag==",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=SzEPiB85EJLYH5MjJeUF0ApMELzz6gqA8UfH+9ysB60=;\n b=WfDmDmIsuupAvoF7lMlt+v3Bwu0NVVfW7kh8xQlbg7+wBkTnAEDC/hbmIXt5kZY5yIIMY0HaG5YWK16+/90fwzDcb2qOEiofHa/NnyIdXD5Ri72OhSMdqCpSC6durLkrV5Pr1e8IlQDQ+O/VWQPnz0qv648h46kii9j82s3VaZjNk1MT7ZPgsnV2u03xvNw7GDXc2RDgLefcVrbFY0m+FPAluat9H6gItB/VzjTEy+BbfKDNPZVFwmYuXpM0ZBZe2W/MlQAgf+Dep7oQLV5DZSuJakNUwpRA5Y6+LIwYBgc8FUppyBefZRyYyLHAQiy61ibVm4hIUHmIxJC0iSE27A==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 216.228.112.34) smtp.rcpttodomain=canonical.com smtp.mailfrom=nvidia.com;\n dmarc=pass (p=quarantine sp=none pct=100) action=none header.from=nvidia.com;\n dkim=none (message not signed); arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=SzEPiB85EJLYH5MjJeUF0ApMELzz6gqA8UfH+9ysB60=;\n b=KpAkuzHjM8ABxjTn1XxTSeusPk8S2M9XEUbUWwlDaaMvULGHEEs91pg1CffYmH5vzhgVx/RTNa6ss9i8vB3kmaadza5M4HiHELj3Ijh7s3yDq2T0xbpc7o1zpJ/LzT5vaHr5mLJ63QyBGZrPFfntW2IKab5YdFCQhUSOlvqUmsJhSabjGQCtmOcEGLV8hlMq3tk++EONn3jn61YAsmZmsLPczGBIaXbXySwR0ITc/cIUZaydzkzj+ImKkDR9Do5Nj7hDM7N+hejeQu6g5YCq7J+Mlx0kd5yEHqGRRoW60qisYetQi4zf3EmpvC6kux5Abi1P+bx2yVhhV5JJEBLg8Q==",
        "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 216.228.112.34)\n smtp.mailfrom=nvidia.com; canonical.com; dkim=none (message not signed)\n header.d=none;canonical.com; dmarc=pass action=none header.from=nvidia.com;",
        "Received-SPF": "Pass (protection.outlook.com: domain of nvidia.com designates\n 216.228.112.34 as permitted sender) receiver=protection.outlook.com;\n client-ip=216.228.112.34; helo=mail.nvidia.com;",
        "From": "Xueming Li <xuemingl@nvidia.com>",
        "To": "",
        "CC": "<dev@dpdk.org>, <xuemingl@nvidia.com>, Thomas Monjalon\n <thomas@monjalon.net>, <stable@dpdk.org>, Christian Ehrhardt\n <christian.ehrhardt@canonical.com>, Yuanhan Liu <yuanhan.liu@linux.intel.com>",
        "Date": "Wed, 11 Aug 2021 14:22:06 +0300",
        "Message-ID": "<20210811112207.370348-2-xuemingl@nvidia.com>",
        "X-Mailer": "git-send-email 2.27.0",
        "In-Reply-To": "<20210811112207.370348-1-xuemingl@nvidia.com>",
        "References": "<20210612135628.20460-1-xuemingl@nvidia.com>\n <20210811112207.370348-1-xuemingl@nvidia.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[172.20.187.5]",
        "X-ClientProxiedBy": "HQMAIL101.nvidia.com (172.20.187.10) To\n HQMAIL107.nvidia.com (172.20.187.13)",
        "X-EOPAttributedMessage": "0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-Correlation-Id": "5bb0893a-6035-4bf5-215e-08d95cba4fac",
        "X-MS-TrafficTypeDiagnostic": "DM6PR12MB4418:",
        "X-LD-Processed": "43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr",
        "X-Microsoft-Antispam-PRVS": "\n <DM6PR12MB4418689A318FBD7CA6676F71A1F89@DM6PR12MB4418.namprd12.prod.outlook.com>",
        "X-MS-Oob-TLC-OOBClassifiers": "OLM:363;",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n hRRAaejpYXE6SP2nqNTiSqJoCOxHg05CXDASiV8TS/BzrX2J+rslDQOXDEIWp0TLKM/qk8GmHL2HEgROA6ARlYYhzMLD8e4kyvjx31hz22rZ2MwvMTjigQ4q4xPxq4yixJxWF57NChUtsa66rb6mTo8MWaTjMxPAiRjY6vneIX3qZlf42dhIB2TBifguoXFp5D8ax2NI23+7kqCAFyrCpxsW3Bh3XXMkT58w8ED46SCxUKuV4tLp22oKflBssHU0dwkZiWfYBLvxANLlEw6LjKZ7NC1ehVlW9fBjBjIy2Wu5gvZPfpjP+vlDxBWov7bUTT4CbHW64IMjDeD/X4KaYKaeIm0tkopX4ciQOGxCxg8kNSVwrnVZqdIB+33Tm+AbShElngquVfYUN4A9VV9NBSY+3GQcKMqgyxKhy33E+M9WoB1q9ahwvOenB9e1xE9CUsWSNsafk/WM+dzkqwpqcpWF/bSg8uLWfIlCO1jWkIYLIhe5o/RLVLjeF7+5dDSAY4AqLHboNhLZlGszBElQlgLHdZL8wVMA1pbcz7mgv5uP8KuOO/pNTNKPhu5WVDFjpABsZ4gLwlRxlOvtaItL1IODHHcQBe3Sm/RksPB2j13UH/wbV6WzQI52bwPz6hU/v21ewMnEkCLQDi7nggP8jnkNZS7YNM9Vk3cB+sIeIkQxU3OOyQ/4K37MHo6wN6HCpdcwEAo5mHV4eutErAbN21PawQi3YxDg1O0dFnZVAXg=",
        "X-Forefront-Antispam-Report": "CIP:216.228.112.34; CTRY:US; LANG:en; SCL:1;\n SRV:;\n IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:schybrid03.nvidia.com; CAT:NONE;\n SFS:(4636009)(36840700001)(46966006)(508600001)(8936002)(1076003)(47076005)(4326008)(82310400003)(86362001)(5660300002)(36860700001)(2906002)(109986005)(356005)(336012)(55016002)(26005)(426003)(83380400001)(8676002)(7636003)(186003)(70206006)(70586007)(7696005)(6286002)(2616005)(16526019)(316002)(36756003)(36906005)(6666004)(54906003)(266003);\n DIR:OUT; SFP:1101;",
        "X-OriginatorOrg": "Nvidia.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "11 Aug 2021 11:22:31.8989 (UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 5bb0893a-6035-4bf5-215e-08d95cba4fac",
        "X-MS-Exchange-CrossTenant-Id": "43083d15-7273-40c1-b7db-39efd9ccc17a",
        "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "\n TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.112.34];\n Helo=[mail.nvidia.com]",
        "X-MS-Exchange-CrossTenant-AuthSource": "\n CO1NAM11FT026.eop-nam11.prod.protection.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "DM6PR12MB4418",
        "Subject": "[dpdk-dev] [PATCH v3 2/2] devtools: fix patches missing if range\n newer than HEAD",
        "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",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "Current fix scan scripts used HEAD branch as history reference.\nWhen users ran it in an earlier branch, few patches were scanned\ndue to the fixes in the range are newer and not merged to current\nbranch.\n\nThis patch introduces optional <branch> argument, default to HEAD\nif not specified. Checks the <range> specified in parameter must\nbeing merged in <branch>.\n\nFixes: 752d8e097ec1 (\"scripts: show fixes with release version of bug\")\nCc: Thomas Monjalon <thomas@monjalon.net>\nCc: stable@dpdk.org\nCc: Christian Ehrhardt <christian.ehrhardt@canonical.com>\n\nSigned-off-by: Xueming Li <xuemingl@nvidia.com>\n---\n devtools/git-log-fixes.sh | 26 +++++++++++++++++++-------\n 1 file changed, 19 insertions(+), 7 deletions(-)",
    "diff": "diff --git a/devtools/git-log-fixes.sh b/devtools/git-log-fixes.sh\nindex 153ba5b438..dbed4b6419 100755\n--- a/devtools/git-log-fixes.sh\n+++ b/devtools/git-log-fixes.sh\n@@ -4,7 +4,7 @@\n \n print_usage ()\n {\n-\techo \"usage: $(basename $0) [-h] <git_range>\"\n+\techo \"usage: $(basename $0) [-h] <git_range> [<branch>]\"\n }\n \n print_help ()\n@@ -15,6 +15,7 @@ print_help ()\n \tFind fixes to backport on previous versions.\n \tIt looks for the word \"fix\" in the headline or a tag \"Fixes\" or \"Reverts\".\n \tThe oldest bug origin is printed as well as partially fixed versions.\n+\tIt looks into current branch or the branch specified.\n \tEND_OF_HELP\n }\n \n@@ -33,14 +34,23 @@ while getopts h ARG ; do\n done\n shift $(($OPTIND - 1))\n [ $# -ge 1 ] || usage_error 'range argument required'\n-range=\"$*\"\n+range=\"$1\"\n+branch=\"$2\"\n+\n+# default to current branch as history reference\n+[ -n \"$branch\" ] || branch=\"HEAD\"\n+# get real brnach name\n+refbranch=$(git rev-parse --abbrev-ref $branch)\n+range_last=$(git rev-parse $range | head -n1)\n+if ! git branch -a --contains $range_last | grep -q -e \" $refbranch$\" -e \" remotes/$refbranch$\"; then\n+\techo \"range $range not included by branch $refbranch\"\n+\texit 1\n+fi\n \n # get major release version of a commit\n commit_version () # <hash>\n {\n \tlocal VER=\"v*.*\"\n-\t# use current branch as history reference\n-\tlocal refbranch=$(git rev-parse --abbrev-ref HEAD)\n \tlocal tag=$( (git tag -l \"$VER\" --contains $1 --sort=creatordate --merged $refbranch 2>&- ||\n \t\t# tag --merged option has been introduced in git 2.7.0\n \t\t# below is a fallback in case of old git version\n@@ -49,9 +59,11 @@ commit_version () # <hash>\n \t\t\tsed \"s,.\\+,$t,\"\n \t\tdone) |\n \t\thead -n1)\n-\tif [ -z \"$tag\" ] ; then\n-\t\t# before -rc1 tag of release in progress\n-\t\tcat VERSION | cut -d'.' -f-2\n+\tif [ -z \"$tag\" ]; then\n+\t\tif [ \"$branch\" = 'HEAD' ]; then\n+\t\t\t# before -rc1 tag of release in progress\n+\t\t\tcat VERSION | cut -d'.' -f-2\n+\t\tfi\n \telse\n \t\techo $tag | sed 's,^v,,' | sed 's,-rc.*,,'\n \tfi\n",
    "prefixes": [
        "v3",
        "2/2"
    ]
}