Cover Letter Detail
Show a cover letter.
GET /api/1.1/covers/15084/?format=api
{ "id": 15084, "url": "https://patchwork.libcamera.org/api/1.1/covers/15084/?format=api", "web_url": "https://patchwork.libcamera.org/cover/15084/", "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": "<20211209092906.37303-1-tomi.valkeinen@ideasonboard.com>", "date": "2021-12-09T09:29:01", "name": "[libcamera-devel,RFC,v3,0/5] Python bindings", "submitter": { "id": 109, "url": "https://patchwork.libcamera.org/api/1.1/people/109/?format=api", "name": "Tomi Valkeinen", "email": "tomi.valkeinen@ideasonboard.com" }, "mbox": "https://patchwork.libcamera.org/cover/15084/mbox/", "series": [ { "id": 2829, "url": "https://patchwork.libcamera.org/api/1.1/series/2829/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=2829", "date": "2021-12-09T09:29:01", "name": "Python bindings", "version": 3, "mbox": "https://patchwork.libcamera.org/series/2829/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/covers/15084/comments/", "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 72AC8BF415\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 9 Dec 2021 09:29:45 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 887BA6088E;\n\tThu, 9 Dec 2021 10:29:44 +0100 (CET)", "from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 0EAD260224\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 9 Dec 2021 10:29:43 +0100 (CET)", "from deskari.lan (91-156-85-209.elisa-laajakaista.fi\n\t[91.156.85.209])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 755EF501;\n\tThu, 9 Dec 2021 10:29:42 +0100 (CET)" ], "Authentication-Results": "lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"QTYA6J27\"; dkim-atps=neutral", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1639042182;\n\tbh=S7jILXP0Zd99IAenHrDXZ+6U23I0SDz31j10lZU+uPY=;\n\th=From:To:Cc:Subject:Date:From;\n\tb=QTYA6J27Lruj/PVYEdPovlA/hzn2+bGmwG/01yuSdNPahgCYWnWFG1BWpBPGyYs5V\n\ts/IPFrtnDojwTCWjUZg4uzbprKMA+Iwp4r2h4xHpl73P7qGhdBYfMafZSRj+RJnPZ/\n\tDY6wnQNLsMCsv5L4U97RsSEDqn78hXIPC6DyIcjY=", "From": "Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>", "To": "libcamera-devel@lists.libcamera.org", "Date": "Thu, 9 Dec 2021 11:29:01 +0200", "Message-Id": "<20211209092906.37303-1-tomi.valkeinen@ideasonboard.com>", "X-Mailer": "git-send-email 2.25.1", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "Subject": "[libcamera-devel] [RFC v3 0/5] Python bindings", "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": "Hi,\n\nThird RFC of the python bindings. I believe it's over a year since the\nlast version, and I've been tinkering with the bindings every now and\nthen.\n\nThis version includes cam.py, which mimics 'cam' tool. The idea is not\nto try to replace 'cam', but to test the bindings in a real use case,\nrather than artificial tests.\n\nThere are a few clear items that should be done to make this more\nusable:\n\n- Fix the ControlValue handling, as arrays are not handled at all.\n Possibly other types are not handled correctly.\n- Add ControlList parameter to Camera.start()\n- Add Transform\n\n Tomi\n\nTomi Valkeinen (5):\n HACK: Camera public destructor\n libcamera: Request: expose Camera from Request\n gitignore: add .cache\n Add Python bindings\n py: Add cam.py\n\n .gitignore | 2 +\n include/libcamera/camera.h | 2 +-\n include/libcamera/request.h | 2 +\n meson.build | 1 +\n meson_options.txt | 5 +\n src/libcamera/request.cpp | 5 +\n src/meson.build | 1 +\n src/py/meson.build | 1 +\n src/py/pycamera/__init__.py | 10 +\n src/py/pycamera/meson.build | 43 ++++\n src/py/pycamera/pymain.cpp | 424 ++++++++++++++++++++++++++++++++\n src/py/test/cam.py | 464 ++++++++++++++++++++++++++++++++++++\n src/py/test/cam_kms.py | 185 ++++++++++++++\n src/py/test/cam_null.py | 46 ++++\n src/py/test/cam_qt.py | 355 +++++++++++++++++++++++++++\n src/py/test/cam_qtgl.py | 385 ++++++++++++++++++++++++++++++\n src/py/test/gl_helpers.py | 67 ++++++\n subprojects/pybind11.wrap | 12 +\n 18 files changed, 2009 insertions(+), 1 deletion(-)\n create mode 100644 src/py/meson.build\n create mode 100644 src/py/pycamera/__init__.py\n create mode 100644 src/py/pycamera/meson.build\n create mode 100644 src/py/pycamera/pymain.cpp\n create mode 100755 src/py/test/cam.py\n create mode 100644 src/py/test/cam_kms.py\n create mode 100644 src/py/test/cam_null.py\n create mode 100644 src/py/test/cam_qt.py\n create mode 100644 src/py/test/cam_qtgl.py\n create mode 100644 src/py/test/gl_helpers.py\n create mode 100644 subprojects/pybind11.wrap" }