diff --git a/srcpkgs/python3-build/template b/srcpkgs/python3-build/template new file mode 100644 index 00000000000000..3364890dbc6eb4 --- /dev/null +++ b/srcpkgs/python3-build/template @@ -0,0 +1,25 @@ +# Template file for 'python3-build' +pkgname=python3-build +_pkg=${pkgname#*-} +version=0.8.0 +revision=1 +wrksrc="${_pkg}-${version}" +build_style=python3-module +hostmakedepends="python3-setuptools" +# TODO: remove python3-tomli in python3>=3.11.0 +depends="python3-packaging python3-pep517 python3-tomli" +checkdepends="${depends} python3-pytest-mock python3-pytest-rerunfailures + python3-filelock python3-toml python3-wheel" +short_desc="Simple, correct PEP 517 build frontend" +maintainer="icp " +license="MIT" +homepage="https://github.com/pypa/build" +changelog="https://pypa-build.readthedocs.io/en/stable/changelog.html" +distfiles="https://github.com/pypa/build/archive/refs/tags/${version}.tar.gz" +checksum=8aba5ec4dcb52ede2a87a62d1bea4052ca4fbc09422a807c43f119033acb9cd8 +# Disable generating __pycache__ which makes a couple of tests to fail! +make_check_pre="env PYTHONDONTWRITEBYTECODE=1" + +post_install() { + vlicense LICENSE +} diff --git a/srcpkgs/python3-editables/template b/srcpkgs/python3-editables/template new file mode 100644 index 00000000000000..996286b51bb76e --- /dev/null +++ b/srcpkgs/python3-editables/template @@ -0,0 +1,21 @@ +# Template file for 'python3-editables' +pkgname=python3-editables +_pkg=${pkgname#*-} +version=0.3 +revision=1 +wrksrc="${_pkg}-${version}" +build_style=python3-module +hostmakedepends="python3-setuptools" +depends="python3" +checkdepends="python3-pytest python3-virtualenv" +short_desc="Python library for creating editable wheels" +maintainer="icp " +license="MIT" +homepage="https://github.com/pfmoore/editables" +changelog="https://github.com/pfmoore/editables/blob/main/CHANGELOG.md" +distfiles="https://github.com/pfmoore/editables/archive/refs/tags/${version}.tar.gz" +checksum=42f7240164af1e028ccb7b60e72f54bbd8b639e9409595fbeffac5d3fb610643 + +post_install() { + vlicense LICENSE.txt +} diff --git a/srcpkgs/python3-hatchling/template b/srcpkgs/python3-hatchling/template new file mode 100644 index 00000000000000..69d1fe73d5f307 --- /dev/null +++ b/srcpkgs/python3-hatchling/template @@ -0,0 +1,39 @@ +# Template file for 'python3-hatchling' +pkgname=python3-hatchling +_pkg=${pkgname#*-} +version=1.3.1 +revision=1 +wrksrc="hatch-${_pkg}-v${version}" +build_wrksrc="backend" +build_style=python3-pep517 +# TODO: remove python3-tomli in python3>=3.11.0 +hostmakedepends="python3-editables python3-packaging python3-pathspec python3-pluggy python3-tomli" +depends="${hostmakedepends}" +checkdepends="${depends} git python3-devel python3-pep517 python3-platformdirs python3-build + python3-requests python3-virtualenv python3-pytest python3-atomicwrites python3-click + python3-httpx python3-rich python3-tomli-w" +short_desc="Extensible, standards compliant build backend used by Hatch" +maintainer="icp " +license="MIT" +homepage="https://hatch.pypa.io/latest/" +changelog="https://hatch.pypa.io/dev/history/#hatchling" +distfiles="https://github.com/pypa/hatch/archive/refs/tags/${_pkg}-v${version}.tar.gz" +checksum=fa885e4493d6c18ee77b827c4437aefbfa75fc2ed6ba9cfc172f0a6fa9df2c5b + +do_patch () { + # All tests pass except a subset of assertions which tries to + # get date medatadata from built WHEEL files. Full log at + # https://gist.github.com/icp1994/a541be972566c1a0778b2c2eebe0cd4b + vsed -e "/assert zip_info\.date_time/d" \ + -i ../tests/backend/builders/test_custom.py \ + -i ../tests/backend/builders/test_wheel.py +} + +do_check() { + python3 tests/downstream/integrate.py + PYTHONPATH=src:../src python3 -m pytest ../tests/backend +} + +post_install() { + vlicense LICENSE.txt +} diff --git a/srcpkgs/python3-hatchling/update b/srcpkgs/python3-hatchling/update new file mode 100644 index 00000000000000..982f289f64ebdd --- /dev/null +++ b/srcpkgs/python3-hatchling/update @@ -0,0 +1,2 @@ +site="https://pypi.org/project/hatchling/" +pattern="hatchling \K\d+\.\d+\.\d+(?=)" diff --git a/srcpkgs/python3-pep517/template b/srcpkgs/python3-pep517/template new file mode 100644 index 00000000000000..ef7bebda1ff85e --- /dev/null +++ b/srcpkgs/python3-pep517/template @@ -0,0 +1,31 @@ +# Template file for 'python3-pep517' +pkgname=python3-pep517 +_pkg=${pkgname#*-} +version=0.12.0 +revision=1 +wrksrc="${_pkg}-${version}" +build_style=python3-pep517 +hostmakedepends="python3-flit_core" +# TODO: remove python3-tomli in python3>=3.11.0 +depends="python3-tomli" +checkdepends="${depends} python3-pytest python3-testpath python3-setuptools" +short_desc="API to call PEP 517 hooks for building Python packages" +maintainer="icp " +license="MIT" +homepage="https://github.com/pypa/pep517" +changelog="https://github.com/pypa/pep517/blob/main/doc/changelog.rst" +distfiles="https://github.com/pypa/pep517/archive/refs/tags/v${version}.tar.gz" +checksum=03df9b55d8bee614896c3196b6ab7632829364fe166ad16b9ef5abade3f83612 + +do_patch() { + # Disable flake8 tests + vsed -e '/--flake8/d' -i pytest.ini +} + +do_check() { + PYTHONPATH=pep517 python3 -m pytest +} + +post_install() { + vlicense LICENSE +} diff --git a/srcpkgs/python3-pytest-rerunfailures/template b/srcpkgs/python3-pytest-rerunfailures/template new file mode 100644 index 00000000000000..bcf46a730d43ca --- /dev/null +++ b/srcpkgs/python3-pytest-rerunfailures/template @@ -0,0 +1,18 @@ +# Template file for 'python3-pytest-rerunfailures' +pkgname=python3-pytest-rerunfailures +_pkg=${pkgname#*-} +version=10.2 +revision=1 +wrksrc="${_pkg}-${version}" +build_style=python3-module +hostmakedepends="python3-setuptools" +depends="python3-packaging python3-pytest" +checkdepends="${depends}" +short_desc="Pytest plugin that re-runs failed tests to eliminate flaky failures" +maintainer="icp " +license="MPL-2.0" +homepage="https://github.com/pytest-dev/pytest-rerunfailures" +changelog="https://github.com/pytest-dev/pytest-rerunfailures/blob/master/CHANGES.rst" +distfiles="https://github.com/pytest-dev/pytest-rerunfailures/archive/refs/tags/${version}.tar.gz" +checksum=73316bb2a0b7503e696076a37ffb1f5dd1a45406726a2756feb2b854ccd7547a +make_check_pre="env PYTEST_PLUGINS=pytest_rerunfailures" diff --git a/srcpkgs/python3-tomli-w/template b/srcpkgs/python3-tomli-w/template new file mode 100644 index 00000000000000..cc758d738c84bf --- /dev/null +++ b/srcpkgs/python3-tomli-w/template @@ -0,0 +1,25 @@ +# Template file for 'python3-tomli-w' +pkgname=python3-tomli-w +_pkg=${pkgname#*-} +version=1.0.0 +revision=1 +wrksrc="${_pkg}-${version}" +build_style=python3-pep517 +hostmakedepends="python3-flit_core" +depends="python3" +checkdepends="python3-pytest python3-tomli" +short_desc="Little TOML writer for Python" +maintainer="icp " +license="MIT" +homepage="https://github.com/hukkin/tomli-w" +changelog="https://github.com/hukkin/tomli-w/blob/master/CHANGELOG.md" +distfiles="https://github.com/hukkin/tomli-w/archive/refs/tags/${version}.tar.gz" +checksum=4fe1fb4696899c01356ef4e028c975103abf62e5fa9472f31f1714100f1b065d + +do_check() { + PYTHONPATH=src python3 -m pytest +} + +post_install() { + vlicense LICENSE +}