From 356405bad1b2cbc41cd841ba539f223d3c5baf66 Mon Sep 17 00:00:00 2001 From: Jan Vermaete Date: Sun, 27 Sep 2026 17:21:39 +0200 Subject: [PATCH] python3-construct: new recipe version 2.10.70 Recipe taken from meta-homeassistant of Tom Geelen. Added ptests. But removed the tests with binary data (e.g. .so file). Those tests gave to much issues with QA rules of Yocto/Openembedded. Moved from pypi to github to have all test code. Signed-off-by: Jan Vermaete Signed-off-by: Khem Raj --- .../ptest-packagelists-meta-python.inc | 1 + ...ile-to-enable-pytest-8.x.y-to-find-t.patch | 25 ++++++++++++ ...002-pytest.ini-disable-the-benchmark.patch | 26 +++++++++++++ .../python3-construct_2.10.70.bb | 39 +++++++++++++++++++ 4 files changed, 91 insertions(+) create mode 100644 meta-python/recipes-devtools/python3-construct/python3-construct/0001-add-pytest.ini-file-to-enable-pytest-8.x.y-to-find-t.patch create mode 100644 meta-python/recipes-devtools/python3-construct/python3-construct/0002-pytest.ini-disable-the-benchmark.patch create mode 100644 meta-python/recipes-devtools/python3-construct/python3-construct_2.10.70.bb diff --git a/meta-python/conf/include/ptest-packagelists-meta-python.inc b/meta-python/conf/include/ptest-packagelists-meta-python.inc index 3605026ff3..4435556b2c 100644 --- a/meta-python/conf/include/ptest-packagelists-meta-python.inc +++ b/meta-python/conf/include/ptest-packagelists-meta-python.inc @@ -19,6 +19,7 @@ PTESTS_FAST_META_PYTHON = "\ python3-cachetools \ python3-cbor2 \ python3-configobj \ + python3-construct \ python3-pyconnman \ python3-click \ python3-dasbus \ diff --git a/meta-python/recipes-devtools/python3-construct/python3-construct/0001-add-pytest.ini-file-to-enable-pytest-8.x.y-to-find-t.patch b/meta-python/recipes-devtools/python3-construct/python3-construct/0001-add-pytest.ini-file-to-enable-pytest-8.x.y-to-find-t.patch new file mode 100644 index 0000000000..3e9e73bd45 --- /dev/null +++ b/meta-python/recipes-devtools/python3-construct/python3-construct/0001-add-pytest.ini-file-to-enable-pytest-8.x.y-to-find-t.patch @@ -0,0 +1,25 @@ +From b8d0ba87f629cc6065a2d06cedc5e850407c45de Mon Sep 17 00:00:00 2001 +From: Franz Haas +Date: Tue, 17 Sep 2024 11:23:28 +0200 +Subject: [PATCH 1/1] - add pytest.ini file to enable pytest 8.x.y to find the + tests + +Upstream-Status: Backport [https://github.com/construct/construct/commit/b8d0ba87f629cc6065a2d06cedc5e850407c45de] + +--- + pytest.ini | 3 +++ + 1 file changed, 3 insertions(+) + create mode 100644 pytest.ini + +diff --git a/pytest.ini b/pytest.ini +new file mode 100644 +index 0000000..f5a52af +--- /dev/null ++++ b/pytest.ini +@@ -0,0 +1,3 @@ ++[pytest] ++pythonpath = . ++ +-- +2.47.3 + diff --git a/meta-python/recipes-devtools/python3-construct/python3-construct/0002-pytest.ini-disable-the-benchmark.patch b/meta-python/recipes-devtools/python3-construct/python3-construct/0002-pytest.ini-disable-the-benchmark.patch new file mode 100644 index 0000000000..bc89546c82 --- /dev/null +++ b/meta-python/recipes-devtools/python3-construct/python3-construct/0002-pytest.ini-disable-the-benchmark.patch @@ -0,0 +1,26 @@ +From 7acb7aa51db762a723d85b81262ca14614dbeac0 Mon Sep 17 00:00:00 2001 +From: Jan Vermaete +Date: Mon, 14 Sep 2026 10:24:51 +0200 +Subject: [PATCH 2/2] pytest.ini: disable the benchmark + +Benchmark is also disabled in the github workflow of the project + +Upstream-Status: Inappropriate [oe specific] + +Signed-off-by: Jan Vermaete +--- + pytest.ini | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/pytest.ini b/pytest.ini +index f5a52af..4b1b4b6 100644 +--- a/pytest.ini ++++ b/pytest.ini +@@ -1,3 +1,3 @@ + [pytest] + pythonpath = . +- ++addopts = --benchmark-disable +-- +2.43.0 + diff --git a/meta-python/recipes-devtools/python3-construct/python3-construct_2.10.70.bb b/meta-python/recipes-devtools/python3-construct/python3-construct_2.10.70.bb new file mode 100644 index 0000000000..3364dd31a0 --- /dev/null +++ b/meta-python/recipes-devtools/python3-construct/python3-construct_2.10.70.bb @@ -0,0 +1,39 @@ +SUMMARY = "A powerful declarative symmetric parser/builder for binary data" +HOMEPAGE = "http://construct.readthedocs.org" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=202b39559c1c79fe4715ce81e9e0ac02" +RECIPE_MAINTAINER = "Tom Geelen " + +SRC_URI = "\ + git://github.com/construct/construct.git;protocol=https;branch=master;tag=v${PV} \ + file://0001-add-pytest.ini-file-to-enable-pytest-8.x.y-to-find-t.patch \ + file://0002-pytest.ini-disable-the-benchmark.patch \ +" + +SRCREV = "c25a47172d4bde392b7ad188175b07b319d3dea4" + +inherit setuptools3 ptest-python-pytest + +PACKAGECONFIG ?= "extras" +PACKAGECONFIG[extras] = ",,,python3-arrow python3-cloudpickle python3-cryptography python3-lz4 python3-numpy python3-ruamel-yaml" + +RDEPENDS:${PN} += "\ + python3-compression \ + python3-core \ + python3-crypt \ + python3-cryptography \ + python3-debugger \ + python3-misc \ + python3-pickle \ +" + +RDEPENDS:${PN}-ptest += "python3-pytest-benchmark" + +do_install_ptest:append() { + # *.so files gives issues with QA of Yocto/OpenEmbedded + rm -rf ${D}${PTEST_PATH}/tests/deprecated_gallery + rm -rf ${D}${PTEST_PATH}/tests/gallery + + install -d ${D}${PTEST_PATH} + install -m 0644 ${S}/pytest.ini ${D}${PTEST_PATH} +}