diff options
Diffstat (limited to 'devel/py-pyyaml-ft')
-rw-r--r-- | devel/py-pyyaml-ft/Makefile | 28 | ||||
-rw-r--r-- | devel/py-pyyaml-ft/distinfo | 3 | ||||
-rw-r--r-- | devel/py-pyyaml-ft/files/patch-setup.py | 10 | ||||
-rw-r--r-- | devel/py-pyyaml-ft/pkg-descr | 14 |
4 files changed, 55 insertions, 0 deletions
diff --git a/devel/py-pyyaml-ft/Makefile b/devel/py-pyyaml-ft/Makefile new file mode 100644 index 000000000000..b49ca6135229 --- /dev/null +++ b/devel/py-pyyaml-ft/Makefile @@ -0,0 +1,28 @@ +PORTNAME= pyyaml-ft +PORTVERSION= 8.0.0 +CATEGORIES= devel python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} +DISTNAME= pyyaml_ft-${PORTVERSION} + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= YAML parser and emitter for Python with support for free-threading +WWW= https://pyyaml.org/wiki/PyYAMLDocumentation \ + https://github.com/Quansight-Labs/pyyaml-ft + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +LIB_DEPENDS= libyaml.so:textproc/libyaml + +USES= localbase python +USE_PYTHON= autoplist concurrent cython3 pep517 pytest + +TEST_ENV= PYTHONPATH=${STAGEDIR}${PYTHON_SITELIBDIR} + +post-install: + ${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR} -name '*.so' -exec ${STRIP_CMD} {} + + +.include <bsd.port.mk> diff --git a/devel/py-pyyaml-ft/distinfo b/devel/py-pyyaml-ft/distinfo new file mode 100644 index 000000000000..381fe446bbcd --- /dev/null +++ b/devel/py-pyyaml-ft/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1750188112 +SHA256 (pyyaml_ft-8.0.0.tar.gz) = 0c947dce03954c7b5d38869ed4878b2e6ff1d44b08a0d84dc83fdad205ae39ab +SIZE (pyyaml_ft-8.0.0.tar.gz) = 141057 diff --git a/devel/py-pyyaml-ft/files/patch-setup.py b/devel/py-pyyaml-ft/files/patch-setup.py new file mode 100644 index 000000000000..87599dcbfa8e --- /dev/null +++ b/devel/py-pyyaml-ft/files/patch-setup.py @@ -0,0 +1,10 @@ +--- setup.py.orig 2025-06-10 15:01:38 UTC ++++ setup.py +@@ -1,6 +1,6 @@ import pathlib + import pathlib + +-NAME = 'PyYAML-ft' ++NAME = 'pyyaml-ft' + VERSION = '8.0.0' + DESCRIPTION = "YAML parser and emitter for Python with support for free-threading" + LONG_DESCRIPTION = (pathlib.Path(__file__).parent / 'README.md').read_text(encoding="utf-8") diff --git a/devel/py-pyyaml-ft/pkg-descr b/devel/py-pyyaml-ft/pkg-descr new file mode 100644 index 000000000000..bfdb8d223d4c --- /dev/null +++ b/devel/py-pyyaml-ft/pkg-descr @@ -0,0 +1,14 @@ +PyYAML-ft provides a full-featured YAML processing framework for Python with +support for free-threading. + +PEP 703 introduced free-threaded Python as a separate build of CPython 3.13. +Thread-safety issues that might have otherwise gone unnoticed are now much +easier to trigger because of the absence of protection from the GIL. Also, +because the free-threaded build is ABI-incompatible, extension modules need to +be separate, free-threaded wheels and declare support for it. + +The PyYAML maintainers decided to not port PyYAML to the free-threaded build +before the latter, along with Cython support for it, has been tested more +extensively in real-world applications. Our rationale with this fork is to +implement support for the free-threaded build, so that PyYAML can be tested with +it by its users, even before the port is merged upstream. |