Show a patch.

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

{
    "id": 20958,
    "url": "https://patchwork.libcamera.org/api/1.1/patches/20958/?format=api",
    "web_url": "https://patchwork.libcamera.org/patch/20958/",
    "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": "<20240820130740.568243-2-dan.scally@ideasonboard.com>",
    "date": "2024-08-20T13:07:32",
    "name": "[v4,1/9] Documentation: Add documentation-contents.rst",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "92a305ddcfa47b057fbc5038a032ef99cd465336",
    "submitter": {
        "id": 156,
        "url": "https://patchwork.libcamera.org/api/1.1/people/156/?format=api",
        "name": "Dan Scally",
        "email": "dan.scally@ideasonboard.com"
    },
    "delegate": null,
    "mbox": "https://patchwork.libcamera.org/patch/20958/mbox/",
    "series": [
        {
            "id": 4528,
            "url": "https://patchwork.libcamera.org/api/1.1/series/4528/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=4528",
            "date": "2024-08-20T13:07:31",
            "name": "Documentation improvements",
            "version": 4,
            "mbox": "https://patchwork.libcamera.org/series/4528/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/patches/20958/comments/",
    "check": "pending",
    "checks": "https://patchwork.libcamera.org/api/patches/20958/checks/",
    "tags": {},
    "headers": {
        "Return-Path": "<libcamera-devel-bounces@lists.libcamera.org>",
        "X-Original-To": "parsemail@patchwork.libcamera.org",
        "Delivered-To": "parsemail@patchwork.libcamera.org",
        "Received": [
            "from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id A8FB2BDB13\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue, 20 Aug 2024 13:08:04 +0000 (UTC)",
            "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id D5C54633D4;\n\tTue, 20 Aug 2024 15:07:58 +0200 (CEST)",
            "from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 05B6A633B9\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 20 Aug 2024 15:07:54 +0200 (CEST)",
            "from mail.ideasonboard.com\n\t(cpc141996-chfd3-2-0-cust928.12-3.cable.virginm.net [86.13.91.161])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id D45716BE;\n\tTue, 20 Aug 2024 15:06:51 +0200 (CEST)"
        ],
        "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"ca7M45Mx\"; dkim-atps=neutral",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1724159212;\n\tbh=23GDWuuTXbfPH7NZG5DFluQryIGwzP9j0yOsFZ4htFE=;\n\th=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n\tb=ca7M45MxlLsgf6+vi9rmJIRVnFtg4FOVFE+yZPc17qsyhbo6HZVsUEXBgZNI0i3lV\n\t4b3XTHbj89IaHErYAsCHsjhFR0Ee5p/7GHskWgLaHJ6KYeblOMhFXzIL+VXiWJeqXY\n\txuPGhIAKzHU18FqrZGP8urcWY4/2L3q1Oa8cZbtM=",
        "From": "Daniel Scally <dan.scally@ideasonboard.com>",
        "To": "libcamera-devel@lists.libcamera.org",
        "Cc": "Daniel Scally <dan.scally@ideasonboard.com>,\n\tLaurent Pinchart <laurent.pinchart@ideasonboard.com>",
        "Subject": "[PATCH v4 1/9] Documentation: Add documentation-contents.rst",
        "Date": "Tue, 20 Aug 2024 14:07:32 +0100",
        "Message-Id": "<20240820130740.568243-2-dan.scally@ideasonboard.com>",
        "X-Mailer": "git-send-email 2.34.1",
        "In-Reply-To": "<20240820130740.568243-1-dan.scally@ideasonboard.com>",
        "References": "<20240820130740.568243-1-dan.scally@ideasonboard.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "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>",
        "Errors-To": "libcamera-devel-bounces@lists.libcamera.org",
        "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"
    },
    "content": "Add a new .rst file referencing the documentation contents. This file\nis then included in each documentation page so that we can enhance\nthe Documentation pages on the libcamera website using it. As we do\nnot want the appearance of the libcamera in-tree Documentation to\nchange just yet, disable the new class using the sphinx theme's CSS.\n\nTo facilitate easier distinguishing between \"normal\" and\ndocumentation pages on the website we want to add a \"documentation\"\nclass to the content of all such pages. Since this new file will be\nincluded on each documentation page it is convenient to add the new\ndirective here - do so. As the website uses different CSS to\nlibcamera, move the contents on docs.rst a little so that the\ndirective at the end of the contents block applies correctly.\n\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\nSigned-off-by: Daniel Scally <dan.scally@ideasonboard.com>\n---\nChanges since v1:\n\n\t- None\n\nChanges since v2:\n\n\t- Spaces instead of tabs in meson.build\n\nchanges since v1:\n\n\t- Formatting\n\t- Properly added the new file to meson's list of docs_sources\n\t- Commented the inclusion of the rst-class directive at the end of the\n\t  new file\n\n Documentation/camera-sensor-model.rst         |  2 ++\n Documentation/code-of-conduct.rst             |  2 ++\n Documentation/coding-style.rst                |  2 ++\n Documentation/conf.py                         |  7 ++++-\n Documentation/docs.rst                        |  2 ++\n Documentation/documentation-contents.rst      | 27 +++++++++++++++++++\n Documentation/environment_variables.rst       |  2 ++\n Documentation/getting-started.rst             |  1 +\n .../guides/application-developer.rst          |  2 ++\n Documentation/guides/introduction.rst         |  2 ++\n Documentation/guides/ipa.rst                  |  2 ++\n Documentation/guides/pipeline-handler.rst     |  2 ++\n Documentation/guides/tracing.rst              |  2 ++\n Documentation/lens_driver_requirements.rst    |  2 ++\n Documentation/meson.build                     |  1 +\n Documentation/python-bindings.rst             |  2 ++\n Documentation/sensor_driver_requirements.rst  |  2 ++\n Documentation/software-isp-benchmarking.rst   |  2 ++\n Documentation/theme/static/css/theme.css      |  4 +++\n 19 files changed, 67 insertions(+), 1 deletion(-)\n create mode 100644 Documentation/documentation-contents.rst",
    "diff": "diff --git a/Documentation/camera-sensor-model.rst b/Documentation/camera-sensor-model.rst\nindex b66c880a..87a25bf4 100644\n--- a/Documentation/camera-sensor-model.rst\n+++ b/Documentation/camera-sensor-model.rst\n@@ -1,5 +1,7 @@\n .. SPDX-License-Identifier: CC-BY-SA-4.0\n \n+.. include:: documentation-contents.rst\n+\n .. _camera-sensor-model:\n \n .. todo: Move to Doxygen-generated documentation\ndiff --git a/Documentation/code-of-conduct.rst b/Documentation/code-of-conduct.rst\nindex 38b7d7ad..0edd1e99 100644\n--- a/Documentation/code-of-conduct.rst\n+++ b/Documentation/code-of-conduct.rst\n@@ -1,5 +1,7 @@\n .. SPDX-License-Identifier: CC-BY-4.0\n \n+.. include:: documentation-contents.rst\n+\n .. _code-of-conduct:\n \n Contributor Covenant Code of Conduct\ndiff --git a/Documentation/coding-style.rst b/Documentation/coding-style.rst\nindex 3352b75c..6ac3a4a0 100644\n--- a/Documentation/coding-style.rst\n+++ b/Documentation/coding-style.rst\n@@ -1,5 +1,7 @@\n .. SPDX-License-Identifier: CC-BY-SA-4.0\n \n+.. include:: documentation-contents.rst\n+\n .. _coding-style-guidelines:\n \n Coding Style Guidelines\ndiff --git a/Documentation/conf.py b/Documentation/conf.py\nindex 7eeea7f3..325f2759 100644\n--- a/Documentation/conf.py\n+++ b/Documentation/conf.py\n@@ -61,7 +61,12 @@ language = 'en'\n # List of patterns, relative to source directory, that match files and\n # directories to ignore when looking for source files.\n # This pattern also affects html_static_path and html_extra_path.\n-exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']\n+exclude_patterns = [\n+    '_build',\n+    'Thumbs.db',\n+    '.DS_Store',\n+    'documentation-contents.rst',\n+]\n \n # The name of the Pygments (syntax highlighting) style to use.\n pygments_style = None\ndiff --git a/Documentation/docs.rst b/Documentation/docs.rst\nindex a6e8a59a..5871961c 100644\n--- a/Documentation/docs.rst\n+++ b/Documentation/docs.rst\n@@ -3,6 +3,8 @@\n .. contents::\n    :local:\n \n+.. include:: documentation-contents.rst\n+\n *************\n Documentation\n *************\ndiff --git a/Documentation/documentation-contents.rst b/Documentation/documentation-contents.rst\nnew file mode 100644\nindex 00000000..a6915e05\n--- /dev/null\n+++ b/Documentation/documentation-contents.rst\n@@ -0,0 +1,27 @@\n+.. SPDX-License-Identifier: CC-BY-SA-4.0\n+\n+.. container:: documentation-nav\n+\n+   * :doc:`/api-html/index`\n+   * :doc:`/camera-sensor-model`\n+   * :doc:`/code-of-conduct`\n+   * :doc:`/coding-style`\n+   * :doc:`/environment_variables`\n+   * :doc:`/guides/application-developer`\n+   * :doc:`/guides/introduction`\n+   * :doc:`/guides/ipa`\n+   * :doc:`/guides/pipeline-handler`\n+   * :doc:`/guides/tracing`\n+   * :doc:`/lens_driver_requirements`\n+   * :doc:`/python-bindings`\n+   * :doc:`/sensor_driver_requirements`\n+   * :doc:`/software-isp-benchmarking`\n+\n+..\n+   The following directive adds the \"documentation\" class to all of the pages\n+   generated by sphinx. This is not relevant in libcamera nor addressed in the\n+   theme's CSS, since all of the pages here are documentation. It **is** used\n+   to properly format the documentation pages on libcamera.org and so should not\n+   be removed.\n+\n+.. rst-class:: documentation\ndiff --git a/Documentation/environment_variables.rst b/Documentation/environment_variables.rst\nindex de434c38..7da9883a 100644\n--- a/Documentation/environment_variables.rst\n+++ b/Documentation/environment_variables.rst\n@@ -1,5 +1,7 @@\n .. SPDX-License-Identifier: CC-BY-SA-4.0\n \n+.. include:: documentation-contents.rst\n+\n Environment variables\n =====================\n \ndiff --git a/Documentation/getting-started.rst b/Documentation/getting-started.rst\nindex 987f43f7..63b050eb 100644\n--- a/Documentation/getting-started.rst\n+++ b/Documentation/getting-started.rst\n@@ -1,4 +1,5 @@\n .. SPDX-License-Identifier: CC-BY-SA-4.0\n+\n .. Getting started information is defined in the project README file.\n .. include:: ../README.rst\n    :start-after: .. section-begin-getting-started\ndiff --git a/Documentation/guides/application-developer.rst b/Documentation/guides/application-developer.rst\nindex 92e2a373..1ea8c40f 100644\n--- a/Documentation/guides/application-developer.rst\n+++ b/Documentation/guides/application-developer.rst\n@@ -1,5 +1,7 @@\n .. SPDX-License-Identifier: CC-BY-SA-4.0\n \n+.. include:: ../documentation-contents.rst\n+\n Using libcamera in a C++ application\n ====================================\n \ndiff --git a/Documentation/guides/introduction.rst b/Documentation/guides/introduction.rst\nindex 700ec2d3..8368bd4a 100644\n--- a/Documentation/guides/introduction.rst\n+++ b/Documentation/guides/introduction.rst\n@@ -1,5 +1,7 @@\n .. SPDX-License-Identifier: CC-BY-SA-4.0\n \n+.. include:: ../documentation-contents.rst\n+\n Developers guide to libcamera\n =============================\n \ndiff --git a/Documentation/guides/ipa.rst b/Documentation/guides/ipa.rst\nindex 25deadef..cd640563 100644\n--- a/Documentation/guides/ipa.rst\n+++ b/Documentation/guides/ipa.rst\n@@ -1,5 +1,7 @@\n .. SPDX-License-Identifier: CC-BY-SA-4.0\n \n+.. include:: ../documentation-contents.rst\n+\n IPA Writer's Guide\n ==================\n \ndiff --git a/Documentation/guides/pipeline-handler.rst b/Documentation/guides/pipeline-handler.rst\nindex 5aa09e90..26aea433 100644\n--- a/Documentation/guides/pipeline-handler.rst\n+++ b/Documentation/guides/pipeline-handler.rst\n@@ -1,5 +1,7 @@\n .. SPDX-License-Identifier: CC-BY-SA-4.0\n \n+.. include:: ../documentation-contents.rst\n+\n Pipeline Handler Writers Guide\n ==============================\n \ndiff --git a/Documentation/guides/tracing.rst b/Documentation/guides/tracing.rst\nindex ae960d85..537dce50 100644\n--- a/Documentation/guides/tracing.rst\n+++ b/Documentation/guides/tracing.rst\n@@ -1,5 +1,7 @@\n .. SPDX-License-Identifier: CC-BY-SA-4.0\n \n+.. include:: ../documentation-contents.rst\n+\n Tracing Guide\n =============\n \ndiff --git a/Documentation/lens_driver_requirements.rst b/Documentation/lens_driver_requirements.rst\nindex b96e502d..85fef76f 100644\n--- a/Documentation/lens_driver_requirements.rst\n+++ b/Documentation/lens_driver_requirements.rst\n@@ -1,5 +1,7 @@\n .. SPDX-License-Identifier: CC-BY-SA-4.0\n \n+.. include:: documentation-contents.rst\n+\n .. _lens-driver-requirements:\n \n Lens Driver Requirements\ndiff --git a/Documentation/meson.build b/Documentation/meson.build\nindex 1ba40fdf..79135b6f 100644\n--- a/Documentation/meson.build\n+++ b/Documentation/meson.build\n@@ -129,6 +129,7 @@ if sphinx.found()\n         'conf.py',\n         'contributing.rst',\n         'docs.rst',\n+        'documentation-contents.rst',\n         'environment_variables.rst',\n         'guides/application-developer.rst',\n         'guides/introduction.rst',\ndiff --git a/Documentation/python-bindings.rst b/Documentation/python-bindings.rst\nindex ed9f686b..94712238 100644\n--- a/Documentation/python-bindings.rst\n+++ b/Documentation/python-bindings.rst\n@@ -1,5 +1,7 @@\n .. SPDX-License-Identifier: CC-BY-SA-4.0\n \n+.. include:: documentation-contents.rst\n+\n .. _python-bindings:\n \n Python Bindings for libcamera\ndiff --git a/Documentation/sensor_driver_requirements.rst b/Documentation/sensor_driver_requirements.rst\nindex 0e516b34..fb4269d0 100644\n--- a/Documentation/sensor_driver_requirements.rst\n+++ b/Documentation/sensor_driver_requirements.rst\n@@ -1,5 +1,7 @@\n .. SPDX-License-Identifier: CC-BY-SA-4.0\n \n+.. include:: documentation-contents.rst\n+\n .. _sensor-driver-requirements:\n \n Sensor Driver Requirements\ndiff --git a/Documentation/software-isp-benchmarking.rst b/Documentation/software-isp-benchmarking.rst\nindex b3033132..9c2a409b 100644\n--- a/Documentation/software-isp-benchmarking.rst\n+++ b/Documentation/software-isp-benchmarking.rst\n@@ -1,5 +1,7 @@\n .. SPDX-License-Identifier: CC-BY-SA-4.0\n \n+.. include:: documentation-contents.rst\n+\n .. _software-isp-benchmarking:\n \n Software ISP benchmarking\ndiff --git a/Documentation/theme/static/css/theme.css b/Documentation/theme/static/css/theme.css\nindex d4274ea6..2b1ed095 100644\n--- a/Documentation/theme/static/css/theme.css\n+++ b/Documentation/theme/static/css/theme.css\n@@ -289,3 +289,7 @@ div#signature {\n \tpadding: 0px;\n \tvisibility: hidden;\n }\n+\n+.documentation-nav {\n+\tdisplay: none;\n+}\n",
    "prefixes": [
        "v4",
        "1/9"
    ]
}