diff --git a/recipes-devtools/python/backport.md b/recipes-devtools/python/backport.md new file mode 100644 index 0000000..8b66f83 --- /dev/null +++ b/recipes-devtools/python/backport.md @@ -0,0 +1,57 @@ +# Backport + +## python3-pytest + +Available with *openembedded-core > mickledore (Yocto Project 4.2)*. + +Upstream revision: `272f6ac29246c67c8ed1ed685ab2c0631fc5fbe3` *(modified for compatibility)* + + +## python3-iniconfig + +Available with *openembedded-core hardknott (Yocto Project 3.3)*. + +Upstream revision: `7290b773486da3888f848abf0dba747f2d9f42e1` + + +## python3-pathlib2 + +Available with *openembedded-core kirkstone (Yocto Project 4.0)*. + +Upstream revision: `30b8cc39e11361e37f0141cd202b355bdab50307` + + +## python3-pluggy + +Available with *openembedded-core honister (Yocto Project 3.4)*. + +Upstream revision: `4cb9623933e3daeb754c06263167be61100f6c0a` + + +## python3-atomicwrites + +Available with *openembedded-core kirkstone (Yocto Project 4.0)*. + +Upstream revision: `42344347be29f0997cc2f7636d9603b1fe1875ae` + + +## python3-setuptools-scm + +Available with *openembedded-core honister (Yocto Project 3.4)*. + +Upstream revision: `42344347be29f0997cc2f7636d9603b1fe1875ae` + + +## python3-toml + +Available with *openembedded-core kirkstone (Yocto Project 4.0)*. + +Upstream revision: `42344347be29f0997cc2f7636d9603b1fe1875ae` + + +## python3-tomli + +Available with *openembedded-core kirkstone (Yocto Project 4.0)*. + +Upstream revision: `0ad97879bb13d542d5b475376805af87cdeb6837` + diff --git a/recipes-devtools/python/python3-atomicwrites/run-ptest b/recipes-devtools/python/python3-atomicwrites/run-ptest new file mode 100644 index 0000000..b63c4de --- /dev/null +++ b/recipes-devtools/python/python3-atomicwrites/run-ptest @@ -0,0 +1,3 @@ +#!/bin/sh + +pytest -o log_cli=true -o log_cli_level=INFO | sed -e 's/\[...%\]//g'| sed -e 's/PASSED/PASS/g'| sed -e 's/FAILED/FAIL/g'|sed -e 's/SKIPPED/SKIP/g'| awk '{if ($NF=="PASS" || $NF=="FAIL" || $NF=="SKIP" || $NF=="XFAIL" || $NF=="XPASS"){printf "%s: %s\n", $NF, $0}else{print}}'| awk '{if ($NF=="PASS" || $NF=="FAIL" || $NF=="SKIP" || $NF=="XFAIL" || $NF=="XPASS") {$NF="";print $0}else{print}}' diff --git a/recipes-devtools/python/python3-atomicwrites_1.4.0.bb b/recipes-devtools/python/python3-atomicwrites_1.4.0.bb new file mode 100644 index 0000000..065a2c7 --- /dev/null +++ b/recipes-devtools/python/python3-atomicwrites_1.4.0.bb @@ -0,0 +1,25 @@ +DESCRIPTION = "Powerful Python library for atomic file writes" +HOMEPAGE = "https://github.com/untitaker/python-atomicwrites" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=91cc36cfafeefb7863673bcfcb1d4da4" + +SRC_URI[md5sum] = "b5cc15c8f9f180a48665f9aacf91d817" +SRC_URI[sha256sum] = "ae70396ad1a434f9c7046fd2dd196fc04b12f9e91ffb859164193be8b6168a7a" + +inherit pypi setuptools3 ptest + +SRC_URI += " \ + file://run-ptest \ +" + +RDEPENDS:${PN}-ptest += " \ + ${PYTHON_PN}-pytest \ + ${PYTHON_PN}-unixadmin \ +" + +do_install_ptest() { + install -d ${D}${PTEST_PATH}/tests + cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/ +} + +RDEPENDS:${PN} = "${PYTHON_PN}-misc" diff --git a/recipes-devtools/python/python3-iniconfig_1.1.1.bb b/recipes-devtools/python/python3-iniconfig_1.1.1.bb new file mode 100644 index 0000000..6b33597 --- /dev/null +++ b/recipes-devtools/python/python3-iniconfig_1.1.1.bb @@ -0,0 +1,10 @@ +SUMMARY = "A small and simple INI-file parser module" +HOMEPAGE = "https://pypi.org/project/iniconfig/" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=a6bb0320b04a0a503f12f69fea479de9" + +SRC_URI[md5sum] = "0b7f3be87481211c183eae095bcea6f1" +SRC_URI[sha256sum] = "bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32" + +inherit pypi setuptools3 diff --git a/recipes-devtools/python/python3-pathlib2_2.3.7.bb b/recipes-devtools/python/python3-pathlib2_2.3.7.bb new file mode 100644 index 0000000..673b5c7 --- /dev/null +++ b/recipes-devtools/python/python3-pathlib2_2.3.7.bb @@ -0,0 +1,12 @@ +DESCRIPTION = "Object-oriented filesystem paths" +HOMEPAGE = "https://github.com/mcmtroffaes/pathlib2" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=2dc08586cce3ab91bfa091b655c0e440" + +SRC_URI[sha256sum] = "7a4329d67beff9a712e1d3ae147e4e3e108b0bfd284ffdea03a635126c76b3c0" + +inherit pypi setuptools3 + +RDEPENDS:${PN} += "${PYTHON_PN}-six ${PYTHON_PN}-ctypes" + +BBCLASSEXTEND = "native nativesdk" diff --git a/recipes-devtools/python/python3-pluggy/run-ptest b/recipes-devtools/python/python3-pluggy/run-ptest new file mode 100644 index 0000000..b63c4de --- /dev/null +++ b/recipes-devtools/python/python3-pluggy/run-ptest @@ -0,0 +1,3 @@ +#!/bin/sh + +pytest -o log_cli=true -o log_cli_level=INFO | sed -e 's/\[...%\]//g'| sed -e 's/PASSED/PASS/g'| sed -e 's/FAILED/FAIL/g'|sed -e 's/SKIPPED/SKIP/g'| awk '{if ($NF=="PASS" || $NF=="FAIL" || $NF=="SKIP" || $NF=="XFAIL" || $NF=="XPASS"){printf "%s: %s\n", $NF, $0}else{print}}'| awk '{if ($NF=="PASS" || $NF=="FAIL" || $NF=="SKIP" || $NF=="XFAIL" || $NF=="XPASS") {$NF="";print $0}else{print}}' diff --git a/recipes-devtools/python/python3-pluggy_1.0.0.bb b/recipes-devtools/python/python3-pluggy_1.0.0.bb new file mode 100644 index 0000000..14a7ccb --- /dev/null +++ b/recipes-devtools/python/python3-pluggy_1.0.0.bb @@ -0,0 +1,26 @@ +SUMMARY = "Plugin and hook calling mechanisms for python" +HOMEPAGE = "https://github.com/pytest-dev/pluggy" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=1c8206d16fd5cc02fa9b0bb98955e5c2" + +SRC_URI[sha256sum] = "4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159" + +DEPENDS += "${PYTHON_PN}-setuptools-scm-native" +RDEPENDS:${PN} += "${PYTHON_PN}-importlib-metadata \ + ${PYTHON_PN}-more-itertools \ +" + +inherit pypi ptest setuptools3 + +SRC_URI += " \ + file://run-ptest \ +" + +RDEPENDS:${PN}-ptest += " \ + ${PYTHON_PN}-pytest \ +" + +do_install_ptest() { + install -d ${D}${PTEST_PATH}/testing + cp -rf ${S}/testing/* ${D}${PTEST_PATH}/testing/ +} diff --git a/recipes-devtools/python/python3-pytest_7.4.0.bb b/recipes-devtools/python/python3-pytest_7.4.0.bb new file mode 100644 index 0000000..c1e6711 --- /dev/null +++ b/recipes-devtools/python/python3-pytest_7.4.0.bb @@ -0,0 +1,41 @@ +SUMMARY = "Simple powerful testing with python" +HOMEPAGE = "https://pypi.org/project/pytest/" +DESCRIPTION = "The pytest framework makes it easy to write small tests, yet scales to support complex functional testing for applications and libraries." + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=bd27e41b6550fe0fc45356d1d81ee37c" + +SRC_URI[sha256sum] = "b4bf8c45bd59934ed84001ad51e11b4ee40d40a1229d2c79f9c592b0a3f6bd8a" + +inherit update-alternatives pypi setuptools3 + +DEPENDS += "python3-setuptools-scm-native" + +RDEPENDS:${PN} += " \ + ${PYTHON_PN}-atomicwrites \ + ${PYTHON_PN}-attrs \ + ${PYTHON_PN}-debugger \ + ${PYTHON_PN}-doctest \ + ${PYTHON_PN}-importlib-metadata \ + ${PYTHON_PN}-iniconfig \ + ${PYTHON_PN}-json \ + ${PYTHON_PN}-more-itertools \ + ${PYTHON_PN}-packaging \ + ${PYTHON_PN}-pathlib2 \ + ${PYTHON_PN}-pluggy \ + ${PYTHON_PN}-py \ + ${PYTHON_PN}-setuptools \ + ${PYTHON_PN}-six \ + ${PYTHON_PN}-tomli \ + ${PYTHON_PN}-wcwidth \ +" + +ALTERNATIVE:${PN} += "py.test pytest" + +NATIVE_LINK_NAME[pytest] = "${bindir}/pytest" +ALTERNATIVE_TARGET[pytest] = "${bindir}/pytest" + +ALTERNATIVE_LINK_NAME[py.test] = "${bindir}/py.test" +ALTERNATIVE_TARGET[py.test] = "${bindir}/py.test" + +BBCLASSEXTEND = "native nativesdk" diff --git a/recipes-devtools/python/python3-setuptools-scm_6.0.1.bb b/recipes-devtools/python/python3-setuptools-scm_6.0.1.bb new file mode 100644 index 0000000..afbed17 --- /dev/null +++ b/recipes-devtools/python/python3-setuptools-scm_6.0.1.bb @@ -0,0 +1,26 @@ +SUMMARY = "the blessed package to manage your versions by scm tags" +HOMEPAGE = "https://pypi.org/project/setuptools-scm/" +DESCRIPTION = "setuptools_scm handles managing your Python package versions in SCM metadata instead of declaring them as the version argument or in a SCM managed file." +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=8227180126797a0148f94f483f3e1489" + +SRC_URI[sha256sum] = "d1925a69cb07e9b29416a275b9fadb009a23c148ace905b2fb220649a6c18e92" + +PYPI_PACKAGE = "setuptools_scm" +inherit pypi setuptools3 + +UPSTREAM_CHECK_REGEX = "setuptools_scm-(?P.*)\.tar" + +RDEPENDS:${PN} = "\ + ${PYTHON_PN}-debugger \ + ${PYTHON_PN}-json \ + ${PYTHON_PN}-py \ + ${PYTHON_PN}-setuptools \ + ${PYTHON_PN}-toml \ +" +RDEPENDS:${PN}:class-native = "\ + ${PYTHON_PN}-setuptools-native \ + ${PYTHON_PN}-toml-native \ +" + +BBCLASSEXTEND = "native nativesdk" diff --git a/recipes-devtools/python/python3-toml_0.10.2.bb b/recipes-devtools/python/python3-toml_0.10.2.bb new file mode 100644 index 0000000..be29cac --- /dev/null +++ b/recipes-devtools/python/python3-toml_0.10.2.bb @@ -0,0 +1,15 @@ +SUMMARY = "Python Library for Tom's Obvious, Minimal Language" +HOMEPAGE = "https://github.com/uiri/toml" +LICENSE = "MIT" +SECTION = "devel/python" +LIC_FILES_CHKSUM = "file://LICENSE;md5=16c77b2b1050d2f03cb9c2ed0edaf4f0" + +SRC_URI[sha256sum] = "b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f" + +inherit pypi setuptools3 + +BBCLASSEXTEND = "native nativesdk" + +RDEPENDS:${PN} += " \ + ${PYTHON_PN}-misc \ +" diff --git a/recipes-devtools/python/python3-tomli_2.0.1.bb b/recipes-devtools/python/python3-tomli_2.0.1.bb new file mode 100644 index 0000000..c3d5128 --- /dev/null +++ b/recipes-devtools/python/python3-tomli_2.0.1.bb @@ -0,0 +1,20 @@ +SUMMARY = "A lil' TOML parser" +DESCRIPTION = "Tomli is a Python library for parsing TOML. Tomli is fully \ +compatible with TOML v1.0.0." +HOMEPAGE = "https://github.com/hukkin/tomli" +BUGTRACKER = "https://github.com/hukkin/tomli/issues" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=aaaaf0879d17df0110d1aa8c8c9f46f5" + +inherit pypi setuptools3 + +SRC_URI[sha256sum] = "de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f" + +do_configure:prepend() { +cat > ${S}/setup.py <<-EOF +from setuptools import setup +setup(name="tomli", version="${PV}", packages=["tomli"], package_dir={'tomli': 'src/tomli'}, package_data={"": ["*"]}) +EOF +} + +BBCLASSEXTEND = "native nativesdk"