From: Trevor Gamblin Date: Tue, 9 May 2023 15:55:26 +0000 (-0400) Subject: python3-calver: Add recipe X-Git-Tag: uninative-3.10~131 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=79ed4fcad6bd49c269ada3ab99ca4548aaf34e99;p=thirdparty%2Fopenembedded%2Fopenembedded-core.git python3-calver: Add recipe calver is "a setuptools extension for automatically defining your Python package version as a calendar version." It is required for python3-trove-classifiers (another new recipe), which in turn is required for the upgrade of python3-hatchling from 1.13.0 to work. Signed-off-by: Trevor Gamblin Signed-off-by: Alexandre Belloni --- diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc index a4fa2b4389a..395c187c1b9 100644 --- a/meta/conf/distro/include/maintainers.inc +++ b/meta/conf/distro/include/maintainers.inc @@ -607,6 +607,7 @@ RECIPE_MAINTAINER:pn-python3-attrs = "Tim Orling " RECIPE_MAINTAINER:pn-python3-babel = "Tim Orling " RECIPE_MAINTAINER:pn-python3-bcrypt = "Tim Orling " RECIPE_MAINTAINER:pn-python3-build = "Ross Burton " +RECIPE_MAINTAINER:pn-python3-calver = "Trevor Gamblin " RECIPE_MAINTAINER:pn-python3-certifi = "Tim Orling " RECIPE_MAINTAINER:pn-python3-cffi = "Tim Orling " RECIPE_MAINTAINER:pn-python3-chardet = "Tim Orling " diff --git a/meta/conf/distro/include/ptest-packagelists.inc b/meta/conf/distro/include/ptest-packagelists.inc index 33a72d3eb8b..faa9bd69839 100644 --- a/meta/conf/distro/include/ptest-packagelists.inc +++ b/meta/conf/distro/include/ptest-packagelists.inc @@ -56,6 +56,7 @@ PTESTS_FAST = "\ popt \ python3-atomicwrites \ python3-bcrypt \ + python3-calver \ python3-hypothesis \ python3-jinja2 \ python3-jsonpointer \ diff --git a/meta/recipes-devtools/python/python3-calver/0001-setup.py-hard-code-version.patch b/meta/recipes-devtools/python/python3-calver/0001-setup.py-hard-code-version.patch new file mode 100644 index 00000000000..43f8a78ef03 --- /dev/null +++ b/meta/recipes-devtools/python/python3-calver/0001-setup.py-hard-code-version.patch @@ -0,0 +1,32 @@ +From 390a233ed969f82b2ef209b23bfb523e785603f9 Mon Sep 17 00:00:00 2001 +From: Trevor Gamblin +Date: Tue, 9 May 2023 10:19:41 -0400 +Subject: [PATCH] setup.py: hard-code version + +setup.py is pulling the build version from the current date rather than +a release tag or other predictable method, causing reproducibility +issues in builds. Patch this to make reproducible builds work while +discussing this with upstream maintainer (or developing a patch that can +make calver rely on a more standard pyproject.toml solution). + +Upstream-Status: Inappropriate (configuration) + +Signed-off-by: Trevor Gamblin +--- + setup.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/setup.py b/setup.py +index 73f6b10..2e27cf1 100644 +--- a/setup.py ++++ b/setup.py +@@ -42,5 +42,5 @@ setup( + "use_calver = calver.integration:version", + ], + }, +- version=calver_version(True), ++ version=calver_version("2022.6.26"), + ) +-- +2.40.0 + diff --git a/meta/recipes-devtools/python/python3-calver/run-ptest b/meta/recipes-devtools/python/python3-calver/run-ptest new file mode 100644 index 00000000000..8d2017d39ce --- /dev/null +++ b/meta/recipes-devtools/python/python3-calver/run-ptest @@ -0,0 +1,3 @@ +#!/bin/sh + +pytest --automake diff --git a/meta/recipes-devtools/python/python3-calver_2022.6.26.bb b/meta/recipes-devtools/python/python3-calver_2022.6.26.bb new file mode 100644 index 00000000000..58b33f19ffd --- /dev/null +++ b/meta/recipes-devtools/python/python3-calver_2022.6.26.bb @@ -0,0 +1,28 @@ +SUMMARY = "Setuptools extension for CalVer package versions" +HOMEPAGE = "https://github.com/di/calver" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +SRC_URI = " \ + git://github.com/di/calver;branch=master;protocol=https \ + file://run-ptest \ + file://0001-setup.py-hard-code-version.patch \ +" +SRCREV = "3268d8acf2c345f32a1c5f08ba25dc67f76cca81" + +inherit python_setuptools_build_meta ptest + +S = "${WORKDIR}/git" + +RDEPENDS:${PN}-ptest += " \ + ${PYTHON_PN}-pretend \ + ${PYTHON_PN}-pytest \ + ${PYTHON_PN}-unittest-automake-output \ +" + +do_install_ptest() { + install -d ${D}${PTEST_PATH}/tests + cp -rf ${S}/tests ${D}${PTEST_PATH}/ +} + +BBCLASSEXTEND = "native nativesdk"