Show a patch.

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

{
    "id": 26872,
    "url": "https://patchwork.libcamera.org/api/1.1/patches/26872/?format=api",
    "web_url": "https://patchwork.libcamera.org/patch/26872/",
    "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": "<20260611160354.1900259-1-laurent.pinchart@ideasonboard.com>",
    "date": "2026-06-11T16:03:54",
    "name": "[libcamera-ci] WIP: Drop support for Debian 11",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "62f646498aa795f7dc128eaffa3591ae4dda1ab0",
    "submitter": {
        "id": 2,
        "url": "https://patchwork.libcamera.org/api/1.1/people/2/?format=api",
        "name": "Laurent Pinchart",
        "email": "laurent.pinchart@ideasonboard.com"
    },
    "delegate": null,
    "mbox": "https://patchwork.libcamera.org/patch/26872/mbox/",
    "series": [
        {
            "id": 5987,
            "url": "https://patchwork.libcamera.org/api/1.1/series/5987/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=5987",
            "date": "2026-06-11T16:03:54",
            "name": "[libcamera-ci] WIP: Drop support for Debian 11",
            "version": 1,
            "mbox": "https://patchwork.libcamera.org/series/5987/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/patches/26872/comments/",
    "check": "pending",
    "checks": "https://patchwork.libcamera.org/api/patches/26872/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 9A97EC328C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 11 Jun 2026 16:03:58 +0000 (UTC)",
            "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id B51B4623B4;\n\tThu, 11 Jun 2026 18:03:57 +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 A409461F67\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 11 Jun 2026 18:03:55 +0200 (CEST)",
            "from killaraus.ideasonboard.com\n\t(2001-14ba-70f3-e800--a06.rev.dnainternet.fi\n\t[IPv6:2001:14ba:70f3:e800::a06])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 885BD8D4\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 11 Jun 2026 18:03:25 +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=\"P2WHgSRG\"; dkim-atps=neutral",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1781193805;\n\tbh=LSIGrLR9GydSZ8ph9sxwY78uuXjVLAX7h1ngz5s61NY=;\n\th=From:To:Subject:Date:From;\n\tb=P2WHgSRGtCb5q3qzKslqS+Igbv3yHFLDtHdgS8tr8YRK4zpZAVg8u+p8zmMYnyitk\n\t1gv0l2D/zV7pOqNirRJXwbxif6e410oBLg1t9wLf2oN0DmGRgGIwj2D1sNpTQoJ3Gp\n\taC1hC+v7E6d6Gf+HfkAvopojC2fbKKPBuQbVXmf4=",
        "From": "Laurent Pinchart <laurent.pinchart@ideasonboard.com>",
        "To": "libcamera-devel@lists.libcamera.org",
        "Subject": "[libcamera-ci] [PATCH] WIP: Drop support for Debian 11",
        "Date": "Thu, 11 Jun 2026 19:03:54 +0300",
        "Message-ID": "<20260611160354.1900259-1-laurent.pinchart@ideasonboard.com>",
        "X-Mailer": "git-send-email 2.53.0",
        "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": "Debian 11 (Bullseye) will reach end of LTS life on 2026-08-31. Drop it\nfrom the CI.\n\nThe main effect is dropping compilation testing on gcc 9 and 10. gcc\n10.1 has been released 6 years ago, and the last minor release (10.5) 3\nyears ago. It is not shipped as the default compiler by any LTS of the\nmajor distributions we support.\n\ngcc 11, on the other hand, is the default compiler on Ubuntu 22.04 LTS,\nsupported until May 2027. Add it to the Debian 12 builds to ensure\ncoverage of the whole range of compilers that libcamera supports.\n\nSigned-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n---\nI'm sending this patch for early review, my plan is to delay merging it\nuntil end of August when LTS support for Bullseye ends.\n---\n .gitlab-ci/setup-container.sh | 44 ++++-------------------------------\n gitlab-ci.yml                 | 29 +++--------------------\n 2 files changed, 7 insertions(+), 66 deletions(-)\n\n\nbase-commit: fc3798d77d07ae71c6d0e9b6c6957694a8170cd3",
    "diff": "diff --git a/.gitlab-ci/setup-container.sh b/.gitlab-ci/setup-container.sh\nindex 6c4b439b887b..bb00895c1888 100755\n--- a/.gitlab-ci/setup-container.sh\n+++ b/.gitlab-ci/setup-container.sh\n@@ -67,6 +67,7 @@ PKGS_LIBCAMERA_RUNTIME_MULTIARCH=(\n \tlibudev-dev\n \tlibunwind-dev\n \tlibyaml-dev\n+\tlibyuv-dev\n \tlttng-tools\n \tnlohmann-json3-dev\n \tqt6-base-dev\n@@ -109,15 +110,11 @@ declare -A components\n \n # Install additional packages on a per distribution version basis.\n case $FDO_DISTRIBUTION_VERSION in\n-'bullseye')\n-\t# gcc 9 to expand compilation testing coverage.\n-\tPKGS_LIBCAMERA_RUNTIME+=( g++-9 )\n-\t;;\n 'bookworm')\n+\t# gcc 11 to expand compilation testing coverage.\n+\tPKGS_LIBCAMERA_RUNTIME+=( g++-11 )\n \t# libclang-rt-dev for the clang ASan runtime.\n \tPKGS_LIBCAMERA_RUNTIME_MULTIARCH+=( libclang-rt-dev )\n-\t# For the Android camera HAL and the virtual pipeline handler.\n-\tPKGS_LIBCAMERA_RUNTIME_MULTIARCH+=( libyuv-dev )\n \t;;\n 'trixie')\n \t# gcc 13 to expand compilation testing coverage.\n@@ -138,8 +135,6 @@ case $FDO_DISTRIBUTION_VERSION in\n \tPKGS_LIBCAMERA_RUNTIME+=( clang-format jq python3-autopep8 reuse shellcheck )\n \t# libclang-rt-dev for the clang ASan runtime.\n \tPKGS_LIBCAMERA_RUNTIME_MULTIARCH+=( libclang-rt-19-dev )\n-\t# For the Android camera HAL and the virtual pipeline handler.\n-\tPKGS_LIBCAMERA_RUNTIME_MULTIARCH+=( libyuv-dev )\n \t# For lc-compliance in the `test-lc-compliance:virtual` job\n \t# libevent-dev cannot be used here, see build-libcamera-common.sh\n \tPKGS_LIBCAMERA_RUNTIME_MULTIARCH+=( libevent-2.1-7t64 libevent-pthreads-2.1-7t64 )\n@@ -170,14 +165,6 @@ cbuild_install_pkgs() {\n \n \tlocal arch\n \n-\t# The qt6-tools-dev-tools package is only available for bullseye in the\n-\t# backports repository. Enable backports only for that version.\n-\tif [[ $FDO_DISTRIBUTION_VERSION == 'bullseye' ]] ; then\n-\t\techo \"deb http://archive.debian.org/debian bullseye-backports main\" \\\n-\t\t       > /etc/apt/sources.list.d/bullseye-backports.list\n-\t\tapt update\n-\tfi\n-\n \tapt install -y ${pkgs_cbuild[@]}\n \tapt-mark auto ${pkgs_cbuild[@]}\n \n@@ -220,13 +207,8 @@ dpkg_check_version() {\n cbuild_fixups() {\n \techo \"Applying miscellaneous fixups\"\n \n-\tlocal pip3_options\n \tlocal pkg\n \n-\tif [[ $FDO_DISTRIBUTION_VERSION != 'bullseye' ]] ; then\n-\t\tpip3_options=--break-system-packages\n-\tfi\n-\n \t# Install packages from pip to ensure minimum versions.\n \tfor pkg in \"${PKGS_PIP_MIN_VERSIONS[@]}\" ; do\n \t\tpkg=($pkg)\n@@ -254,27 +236,9 @@ cbuild_fixups() {\n \t\t\tfi\n \n \t\t\tapt install -y python3-pip\n-\t\t\tpip3 install ${pip3_options} ${pip_name}==${min_version}\n+\t\t\tpip3 install --break-system-packages ${pip_name}==${min_version}\n \t\tfi\n \tdone\n-\n-\t# Create pybind11.pc manually if not provided by the distribution\n-\t# package.\n-\tif [[ ! -f /usr/share/pkgconfig/pybind11.pc ]] ; then\n-\t\techo \"pybind11-dev package not providing pybind11.pc, creating file manually\"\n-\n-\t\tversion=$(dpkg_version pybind11-dev)\n-\n-\t\tcat <<EOF > /usr/share/pkgconfig/pybind11.pc\n-prefix=/usr\n-includedir=\\${prefix}/include\n-\n-Name: pybind11\n-Description: Seamless operability between C++11 and Python\n-Version: ${version}\n-Cflags: -I\\${includedir}\n-EOF\n-\tfi\n }\n \n cbuild_cleanup_pkgs() {\ndiff --git a/gitlab-ci.yml b/gitlab-ci.yml\nindex 427f2d2516dc..d01ee87d3325 100644\n--- a/gitlab-ci.yml\n+++ b/gitlab-ci.yml\n@@ -62,11 +62,6 @@ include:\n     ref: *templates_sha\n     file: '/templates/debian.yml'\n \n-.libcamera-ci.debian:11:\n-  variables:\n-    FDO_DISTRIBUTION_VERSION: 'bullseye'\n-    FDO_DISTRIBUTION_TAG: '2026-04-05.0'\n-\n .libcamera-ci.debian:12:\n   variables:\n     FDO_DISTRIBUTION_VERSION: 'bookworm'\n@@ -92,11 +87,6 @@ include:\n       fi ;\n       .gitlab-ci/setup-container.sh\n \n-container-debian:11:\n-  extends:\n-    - .container-debian\n-    - .libcamera-ci.debian:11\n-\n container-debian:12:\n   extends:\n     - .container-debian\n@@ -152,22 +142,6 @@ container-debian:13:\n     BUILD_TYPE: debug\n     MESON_OPTIONS: ${MESON_ALL_OPTIONS}\n \n-build-full:debian:11:\n-  extends:\n-    - .libcamera-ci.debian:11\n-    - .build-full:debian\n-  needs:\n-    - job: container-debian:11\n-      artifacts: false\n-  parallel:\n-    matrix:\n-      - ARCH: amd64\n-        CC: gcc-9\n-        CXX: g++-9\n-      - ARCH: amd64\n-        CC: gcc-10\n-        CXX: g++-10\n-\n build-full:debian:12:\n   extends:\n     - .libcamera-ci.debian:12\n@@ -180,6 +154,9 @@ build-full:debian:12:\n       ${MESON_ALL_OPTIONS}\n   parallel:\n     matrix:\n+      - ARCH: amd64\n+        CC: gcc-11\n+        CXX: g++-11\n       - ARCH: amd64\n         CC: gcc-12\n         CXX: g++-12\n",
    "prefixes": [
        "libcamera-ci"
    ]
}