Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2195368/?format=api
{ "id": 2195368, "url": "http://patchwork.ozlabs.org/api/patches/2195368/?format=api", "web_url": "http://patchwork.ozlabs.org/project/buildroot/patch/20260210-python-packages-v1-1-6153f56421d4@bootlin.com/", "project": { "id": 27, "url": "http://patchwork.ozlabs.org/api/projects/27/?format=api", "name": "Buildroot development", "link_name": "buildroot", "list_id": "buildroot.buildroot.org", "list_email": "buildroot@buildroot.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260210-python-packages-v1-1-6153f56421d4@bootlin.com>", "list_archive_url": null, "date": "2026-02-10T21:01:55", "name": "[1/2] package/python-gevent: new package", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "d1d56c7ba693f524359ed1f354d8e9806edf81b8", "submitter": { "id": 85775, "url": "http://patchwork.ozlabs.org/api/people/85775/?format=api", "name": "Alexis Lothoré", "email": "alexis.lothore@bootlin.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/buildroot/patch/20260210-python-packages-v1-1-6153f56421d4@bootlin.com/mbox/", "series": [ { "id": 491740, "url": "http://patchwork.ozlabs.org/api/series/491740/?format=api", "web_url": "http://patchwork.ozlabs.org/project/buildroot/list/?series=491740", "date": "2026-02-10T21:01:54", "name": "package: add new python packages", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/491740/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2195368/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2195368/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<buildroot-bounces@buildroot.org>", "X-Original-To": [ "incoming-buildroot@patchwork.ozlabs.org", "buildroot@buildroot.org" ], "Delivered-To": [ "patchwork-incoming-buildroot@legolas.ozlabs.org", "buildroot@buildroot.org" ], "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=buildroot.org header.i=@buildroot.org\n header.a=rsa-sha256 header.s=default header.b=O4WPxeOW;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org\n (client-ip=2605:bc80:3010::138; helo=smtp1.osuosl.org;\n envelope-from=buildroot-bounces@buildroot.org; receiver=patchwork.ozlabs.org)" ], "Received": [ "from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4f9Ysh3j6Jz1xvg\n\tfor <incoming-buildroot@patchwork.ozlabs.org>;\n Wed, 11 Feb 2026 08:02:16 +1100 (AEDT)", "from localhost (localhost [127.0.0.1])\n\tby smtp1.osuosl.org (Postfix) with ESMTP id 8C93782784;\n\tTue, 10 Feb 2026 21:02:12 +0000 (UTC)", "from smtp1.osuosl.org ([127.0.0.1])\n by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id 1aI3xWnCj2al; Tue, 10 Feb 2026 21:02:11 +0000 (UTC)", "from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142])\n\tby smtp1.osuosl.org (Postfix) with ESMTP id 7F25A82792;\n\tTue, 10 Feb 2026 21:02:10 +0000 (UTC)", "from smtp1.osuosl.org (smtp1.osuosl.org [140.211.166.138])\n by lists1.osuosl.org (Postfix) with ESMTP id 8370EF2\n for <buildroot@buildroot.org>; Tue, 10 Feb 2026 21:02:08 +0000 (UTC)", "from localhost (localhost [127.0.0.1])\n by smtp1.osuosl.org (Postfix) with ESMTP id 688FB82771\n for <buildroot@buildroot.org>; Tue, 10 Feb 2026 21:02:08 +0000 (UTC)", "from smtp1.osuosl.org ([127.0.0.1])\n by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id 269k45mb1FsO for <buildroot@buildroot.org>;\n Tue, 10 Feb 2026 21:02:07 +0000 (UTC)", "from smtpout-03.galae.net (smtpout-03.galae.net [185.246.85.4])\n by smtp1.osuosl.org (Postfix) with ESMTPS id 58AC6826C8\n for <buildroot@buildroot.org>; Tue, 10 Feb 2026 21:02:06 +0000 (UTC)", "from smtpout-01.galae.net (smtpout-01.galae.net [212.83.139.233])\n by smtpout-03.galae.net (Postfix) with ESMTPS id 2A4024E40C03\n for <buildroot@buildroot.org>; Tue, 10 Feb 2026 21:02:05 +0000 (UTC)", "from mail.galae.net (mail.galae.net [212.83.136.155])\n by smtpout-01.galae.net (Postfix) with ESMTPS id F0919606BD;\n Tue, 10 Feb 2026 21:02:04 +0000 (UTC)", "from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon)\n with ESMTPSA id AC2EC10B91A8A; Tue, 10 Feb 2026 22:02:03 +0100 (CET)" ], "X-Virus-Scanned": [ "amavis at osuosl.org", "amavis at osuosl.org" ], "X-Comment": "SPF check N/A for local connections - client-ip=140.211.166.142;\n helo=lists1.osuosl.org; envelope-from=buildroot-bounces@buildroot.org;\n receiver=<UNKNOWN> ", "DKIM-Filter": [ "OpenDKIM Filter v2.11.0 smtp1.osuosl.org 7F25A82792", "OpenDKIM Filter v2.11.0 smtp1.osuosl.org 58AC6826C8" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=buildroot.org;\n\ts=default; t=1770757330;\n\tbh=ggyDhwlj5URl3X75DBQJ1FDPWad9rwW8l5VpiccrwyE=;\n\th=Date:References:In-Reply-To:To:Subject:List-Id:List-Unsubscribe:\n\t List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\t From;\n\tb=O4WPxeOWxEdqaEEJiXhDrtMfjnORgYbJp68JRvN8SzKCZFGBgzEiB79RFoIKMD7ZH\n\t NQRVufj4ol/3EhfF8gJis73NDU1HA7FZ6w6+DAn1UHUSXg/f5BRHduBGqJc8sipjUS\n\t UQfs96UufU02JVJeTX8INpkNlznWRFXNDFsNrWpXkeFP14vXA1tZS6LStI76dj0cWn\n\t u93bVEoASIC2wZHILV0IOxwR/Qgb0HFYmJV4lUmHRX4l7Id/IiMXIQirbj3aSs0zm/\n\t k9MG6gT8F3YfR6Kqd9oJKbzWpEuLwCBVLXiTZiOwcFDsfFqYx4yE22Y3uTisNBvg4m\n\t +wuvPmF0Joijw==", "Received-SPF": "Pass (mailfrom) identity=mailfrom; client-ip=185.246.85.4;\n helo=smtpout-03.galae.net; envelope-from=alexis.lothore@bootlin.com;\n receiver=<UNKNOWN>", "DMARC-Filter": "OpenDMARC Filter v1.4.2 smtp1.osuosl.org 58AC6826C8", "Date": "Tue, 10 Feb 2026 22:01:55 +0100", "MIME-Version": "1.0", "Message-Id": "<20260210-python-packages-v1-1-6153f56421d4@bootlin.com>", "References": "<20260210-python-packages-v1-0-6153f56421d4@bootlin.com>", "In-Reply-To": "<20260210-python-packages-v1-0-6153f56421d4@bootlin.com>", "To": "buildroot@buildroot.org", "X-Mailer": "b4 0.14.3", "X-Last-TLS-Session-Version": "TLSv1.3", "X-Mailman-Original-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=bootlin.com; s=dkim;\n t=1770757324; h=from:subject:date:message-id:to:cc:mime-version:content-type:\n content-transfer-encoding:in-reply-to:references;\n bh=EJ+8G4WYjYgx2nr8+eOHDovTV/AMeWN+NxjXfQ4tuTg=;\n b=GcV6HIm40RvTIxJ2sH+Jyxpn9pAh2niWIa+gDqStX7hHyNPI0Z94B5I5iuAnWR0vP95Hti\n 5ECWaTPlWmoDEgAzxN/yEYKN8FALUxsfZjPmAmPXnL/+ZGOJHbYwd7qV8CG+aRVxO5nrK4\n Jl389myN/iKjWDv8ogvLa5nqUTgcZau/oWSI9K4Tw67FZ//AUMy1HYumcTLaOAxw54x7pQ\n g88eXnhPd+Gs/0WLvDOhHPAoWQyUREJp2MOZsY6gkf69je0q4BjPbAuf6BESoWML43FMC/\n KyUmXLKLOYkVQr8XNVg7MwB9hoQUfnc/vqCNnWerItXyy+v4jnEcWW82AO+Yhw==", "X-Mailman-Original-Authentication-Results": [ "smtp1.osuosl.org;\n dmarc=pass (p=reject dis=none)\n header.from=bootlin.com", "smtp1.osuosl.org;\n dkim=pass (2048-bit key,\n unprotected) header.d=bootlin.com header.i=@bootlin.com header.a=rsa-sha256\n header.s=dkim header.b=GcV6HIm4" ], "Subject": "[Buildroot] [PATCH 1/2] package/python-gevent: new package", "X-BeenThere": "buildroot@buildroot.org", "X-Mailman-Version": "2.1.30", "Precedence": "list", "List-Id": "Discussion and development of buildroot <buildroot.buildroot.org>", "List-Unsubscribe": "<https://lists.buildroot.org/mailman/options/buildroot>,\n <mailto:buildroot-request@buildroot.org?subject=unsubscribe>", "List-Archive": "<http://lists.buildroot.org/pipermail/buildroot/>", "List-Post": "<mailto:buildroot@buildroot.org>", "List-Help": "<mailto:buildroot-request@buildroot.org?subject=help>", "List-Subscribe": "<https://lists.buildroot.org/mailman/listinfo/buildroot>,\n <mailto:buildroot-request@buildroot.org?subject=subscribe>", "From": "=?utf-8?q?Alexis_Lothor=C3=A9_via_buildroot?= <buildroot@buildroot.org>", "Reply-To": "=?utf-8?q?Alexis_Lothor=C3=A9?= <alexis.lothore@bootlin.com>", "Cc": "James Hilliard <james.hilliard1@gmail.com>, =?utf-8?q?Alexis_Lothor?=\n\t=?utf-8?q?=C3=A9?= <alexis.lothore@bootlin.com>,\n Nicolas Carrier <nicolas.carrier@nav-timing.safrangroup.com>,\n Thomas Petazzoni <thomas.petazzoni@bootlin.com>", "Content-Type": "text/plain; charset=\"utf-8\"", "Content-Transfer-Encoding": "base64", "Errors-To": "buildroot-bounces@buildroot.org", "Sender": "\"buildroot\" <buildroot-bounces@buildroot.org>" }, "content": "Bring python-gevent module as a standalone package.\n\nSet GEVENTSETUP_EMBED=0 to prevent python-gevent from using its embedded\nlibuv, libev and c-ares and rather use those packaged with buildroot.\n\nSigned-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>\n---\n DEVELOPERS | 1 +\n package/Config.in | 1 +\n package/python-gevent/Config.in | 19 +++++++++++++++++++\n package/python-gevent/python-gevent.hash | 5 +++++\n package/python-gevent/python-gevent.mk | 16 ++++++++++++++++\n support/testing/tests/package/sample_python_gevent.py | 7 +++++++\n support/testing/tests/package/test_python_gevent.py | 12 ++++++++++++\n 7 files changed, 61 insertions(+)", "diff": "diff --git a/DEVELOPERS b/DEVELOPERS\nindex 225d1ac917dc..cc7c38c31873 100644\n--- a/DEVELOPERS\n+++ b/DEVELOPERS\n@@ -155,6 +155,7 @@ N:\tAlexey Lukyanchuk <skif@skif-web.ru>\n F:\tpackage/zabbix/\n \n N: \tAlexis Lothoré <alexis.lothore@bootlin.com>\n+F: \tpackage/python-gevent\n F: \tpackage/python-scp\n \n N:\tAlistair Francis <alistair@alistair23.me>\ndiff --git a/package/Config.in b/package/Config.in\nindex 6284bea7f4ad..76c2a4365513 100644\n--- a/package/Config.in\n+++ b/package/Config.in\n@@ -1127,6 +1127,7 @@ menu \"External python modules\"\n \tsource \"package/python-fonttools/Config.in\"\n \tsource \"package/python-frozenlist/Config.in\"\n \tsource \"package/python-future/Config.in\"\n+\tsource \"package/python-gevent/Config.in\"\n \tsource \"package/python-git/Config.in\"\n \tsource \"package/python-gitdb2/Config.in\"\n \tsource \"package/python-gnupg/Config.in\"\ndiff --git a/package/python-gevent/Config.in b/package/python-gevent/Config.in\nnew file mode 100644\nindex 000000000000..af7a97a49ce3\n--- /dev/null\n+++ b/package/python-gevent/Config.in\n@@ -0,0 +1,19 @@\n+config BR2_PACKAGE_PYTHON_GEVENT\n+\tbool \"python-gevent\"\n+\tdepends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++20\n+\tselect BR2_PACKAGE_C_ARES # runtime\n+\tselect BR2_PACKAGE_LIBEV # runtime\n+\tselect BR2_PACKAGE_LIBUV # runtime\n+\tselect BR2_PACKAGE_HOST_PYTHON_CYTHON # build time\n+\tselect BR2_PACKAGE_HOST_PYTHON_GREENLET # build time\n+\tselect BR2_PACKAGE_HOST_PYTHON_CFFI # build time\n+\tselect BR2_PACKAGE_PYTHON_GREENLET # runtime\n+\tselect BR2_PACKAGE_PYTHON_ZOPEEVENT # runtime\n+\tselect BR2_PACKAGE_PYTHON_ZOPE_INTERFACE # runtime\n+\thelp\n+\t Coroutine-based network library.\n+\n+\t http://www.gevent.org/\n+\n+comment \"python-gevent needs a toolchain w/ C++, gcc >= 8\"\n+\tdepends on !BR2_TOOLCHAIN_GCC_AT_LEAST_8\ndiff --git a/package/python-gevent/python-gevent.hash b/package/python-gevent/python-gevent.hash\nnew file mode 100644\nindex 000000000000..4356972ddd50\n--- /dev/null\n+++ b/package/python-gevent/python-gevent.hash\n@@ -0,0 +1,5 @@\n+# md5, sha256 from https://pypi.org/pypi/gevent/json\n+md5 a415693013e79df4c88a9e5fc90254bc gevent-25.9.1.tar.gz\n+sha256 adf9cd552de44a4e6754c51ff2e78d9193b7fa6eab123db9578a210e657235dd gevent-25.9.1.tar.gz\n+# Locally computed sha256 checksums\n+sha256 4d46bc11d19e3853d54325973b8e2c53090f5638a7bf27fa1f5f1232c78901f7 LICENSE\ndiff --git a/package/python-gevent/python-gevent.mk b/package/python-gevent/python-gevent.mk\nnew file mode 100644\nindex 000000000000..10ddc895f74b\n--- /dev/null\n+++ b/package/python-gevent/python-gevent.mk\n@@ -0,0 +1,16 @@\n+################################################################################\n+#\n+# python-gevent\n+#\n+################################################################################\n+\n+PYTHON_GEVENT_VERSION = 25.9.1\n+PYTHON_GEVENT_SOURCE = gevent-$(PYTHON_GEVENT_VERSION).tar.gz\n+PYTHON_GEVENT_SITE = https://files.pythonhosted.org/packages/9e/48/b3ef2673ffb940f980966694e40d6d32560f3ffa284ecaeb5ea3a90a6d3f\n+PYTHON_GEVENT_SETUP_TYPE = setuptools\n+PYTHON_GEVENT_DEPENDENCIES = libev libuv host-python-greenlet host-python-cffi host-python-cython\n+PYTHON_GEVENT_LICENSE = MIT\n+PYTHON_GEVENT_LICENSE_FILES = LICENSE\n+PYTHON_GEVENT_ENV = GEVENTSETUP_EMBED=0\n+\n+$(eval $(python-package))\ndiff --git a/support/testing/tests/package/sample_python_gevent.py b/support/testing/tests/package/sample_python_gevent.py\nnew file mode 100644\nindex 000000000000..e8f065c17e88\n--- /dev/null\n+++ b/support/testing/tests/package/sample_python_gevent.py\n@@ -0,0 +1,7 @@\n+# Example taken from the official documentation\n+import gevent\n+from gevent import socket\n+\n+urls = ['www.google.com', 'www.example.com', 'www.python.org']\n+jobs = [gevent.spawn(socket.gethostbyname, url) for url in urls]\n+_ = gevent.joinall(jobs, timeout=2)\ndiff --git a/support/testing/tests/package/test_python_gevent.py b/support/testing/tests/package/test_python_gevent.py\nnew file mode 100644\nindex 000000000000..567cae182d2b\n--- /dev/null\n+++ b/support/testing/tests/package/test_python_gevent.py\n@@ -0,0 +1,12 @@\n+from tests.package.test_python import TestPythonPackageBase\n+\n+\n+class TestPythonGevent(TestPythonPackageBase):\n+ __test__ = True\n+ config = TestPythonPackageBase.config + \\\n+ \"\"\"\n+ BR2_PACKAGE_PYTHON3=y\n+ BR2_PACKAGE_PYTHON_GEVENT=y\n+ \"\"\"\n+ sample_scripts = [\"tests/package/sample_python_gevent.py\"]\n+ timeout = 30\n", "prefixes": [ "1/2" ] }