Show a patch.

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

{
    "id": 3005,
    "url": "https://patchwork.libcamera.org/api/1.1/patches/3005/?format=api",
    "web_url": "https://patchwork.libcamera.org/patch/3005/",
    "project": {
        "id": 1,
        "url": "https://patchwork.libcamera.org/api/1.1/projects/1/?format=api",
        "name": "libcamera",
        "link_name": "libcamera",
        "list_id": "libcamera_core",
        "list_email": "libcamera-devel@lists.libcamera.org",
        "web_url": "",
        "scm_url": "",
        "webscm_url": ""
    },
    "msgid": "<20200306172030.27791-1-kieran.bingham@ideasonboard.com>",
    "date": "2020-03-06T17:20:30",
    "name": "[libcamera-devel,v2] libcamera: Declare dependency on generated headers",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": false,
    "hash": "d32be3cc7b6e6b1ce6b18895f60467ee6dd1c8ad",
    "submitter": {
        "id": 4,
        "url": "https://patchwork.libcamera.org/api/1.1/people/4/?format=api",
        "name": "Kieran Bingham",
        "email": "kieran.bingham@ideasonboard.com"
    },
    "delegate": {
        "id": 11,
        "url": "https://patchwork.libcamera.org/api/1.1/users/11/?format=api",
        "username": "kbingham",
        "first_name": "Kieran",
        "last_name": "Bingham",
        "email": "kieran.bingham@ideasonboard.com"
    },
    "mbox": "https://patchwork.libcamera.org/patch/3005/mbox/",
    "series": [
        {
            "id": 704,
            "url": "https://patchwork.libcamera.org/api/1.1/series/704/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=704",
            "date": "2020-03-06T17:20:30",
            "name": "[libcamera-devel,v2] libcamera: Declare dependency on generated headers",
            "version": 2,
            "mbox": "https://patchwork.libcamera.org/series/704/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/patches/3005/comments/",
    "check": "pending",
    "checks": "https://patchwork.libcamera.org/api/patches/3005/checks/",
    "tags": {},
    "headers": {
        "Return-Path": "<kieran.bingham@ideasonboard.com>",
        "Received": [
            "from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 53C0760424\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri,  6 Mar 2020 18:20:34 +0100 (CET)",
            "from localhost.localdomain\n\t(cpc89242-aztw30-2-0-cust488.18-1.cable.virginm.net [86.31.129.233])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id B9D7624B;\n\tFri,  6 Mar 2020 18:20:33 +0100 (CET)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1583515233;\n\tbh=RZofm48yplJuZQcpMPGVFBlcDAK5KEho15wAu/HQT2Q=;\n\th=From:To:Cc:Subject:Date:From;\n\tb=niBicXFMAnEPZ0vA/EOCM3ySPJazJlIPuo2GrMMS/AiXmodccGFFpAuSyAPC7L1se\n\tZsM86EK0Q7LRCSdQHLbwZoGQaM04/0xQ7HeuTRCPZQH0RXkSStBBMQ8GRq9bTZI2nD\n\tsDVPwUz2gUwXt+RzY9Lp8A7ffPgC8V6HG/zXNsh4=",
        "From": "Kieran Bingham <kieran.bingham@ideasonboard.com>",
        "To": "libcamera devel <libcamera-devel@lists.libcamera.org>",
        "Date": "Fri,  6 Mar 2020 17:20:30 +0000",
        "Message-Id": "<20200306172030.27791-1-kieran.bingham@ideasonboard.com>",
        "X-Mailer": "git-send-email 2.20.1",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[libcamera-devel] [PATCH v2] libcamera: Declare dependency on\n\tgenerated headers",
        "X-BeenThere": "libcamera-devel@lists.libcamera.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "<libcamera-devel.lists.libcamera.org>",
        "List-Unsubscribe": "<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>",
        "List-Archive": "<https://lists.libcamera.org/pipermail/libcamera-devel/>",
        "List-Post": "<mailto:libcamera-devel@lists.libcamera.org>",
        "List-Help": "<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>",
        "List-Subscribe": "<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>",
        "X-List-Received-Date": "Fri, 06 Mar 2020 17:20:34 -0000"
    },
    "content": "The control headers are generated automatically by parsing our YAML\ndescriptions, and creating the control headers.\n\nThe headers for the controls can be used directly from within libcamera\ninternal pipeline handlers and core components, but there is no link to\nensure that the headers are generated before they are used.\n\nAs part of updating controls to support properties, the commit\nf870591a9bf5 (\"libcamera: properties: Add location property\") also\ninadvertently moved the generated headers out of the libcamera_api\ndependency generation.\n\nThis allowed a race condition to occur in builds where objects are\nattempted to be built before the API definitions had been generated.\n\nDeclare a dependency on the headers for libcamera to ensure that they\nare built before compiling any object within the libcamera library, and\nre-introduce the headers to the libcamera_api variable.\n\nFixes: f870591a9bf5 (\"libcamera: properties: Add location property\")\n\nSigned-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n---\n include/libcamera/meson.build | 2 ++\n src/libcamera/meson.build     | 1 +\n 2 files changed, 3 insertions(+)",
    "diff": "diff --git a/include/libcamera/meson.build b/include/libcamera/meson.build\nindex f47c583cbbc0..88edf620f69e 100644\n--- a/include/libcamera/meson.build\n+++ b/include/libcamera/meson.build\n@@ -44,6 +44,8 @@ foreach header : control_source_files\n                                      install_dir : join_paths('include', include_dir))\n endforeach\n \n+libcamera_api += control_headers\n+\n gen_header = files('gen-header.sh')\n \n libcamera_h = custom_target('gen-header',\ndiff --git a/src/libcamera/meson.build b/src/libcamera/meson.build\nindex 88658ac563f7..cd95fa11534a 100644\n--- a/src/libcamera/meson.build\n+++ b/src/libcamera/meson.build\n@@ -97,6 +97,7 @@ libcamera_deps = [\n     cc.find_library('dl'),\n     libudev,\n     dependency('threads'),\n+    declare_dependency(sources : [control_headers])\n ]\n \n libcamera_link_with = []\n",
    "prefixes": [
        "libcamera-devel",
        "v2"
    ]
}