diff options
| author | Po-Chuan Hsieh <sunpoet@FreeBSD.org> | 2025-06-01 15:48:58 +0000 |
|---|---|---|
| committer | Po-Chuan Hsieh <sunpoet@FreeBSD.org> | 2025-06-01 16:23:09 +0000 |
| commit | 93e42c90b946e41290a3556c3cb41aa65bd98410 (patch) | |
| tree | b180d7a482c6041303d854e5d1f8d3070ffac1e6 | |
| parent | dbd60c098b7f4528d40aa67d139f039269d0756d (diff) | |
| -rw-r--r-- | devel/Makefile | 1 | ||||
| -rw-r--r-- | devel/py-pyyaml-ft/Makefile | 26 | ||||
| -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 |
5 files changed, 54 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile index 0e14e99fff76..b63b9a99ac18 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -5797,6 +5797,7 @@ SUBDIR += py-pyvisa-py SUBDIR += py-pyxb-x SUBDIR += py-pyyaml + SUBDIR += py-pyyaml-ft SUBDIR += py-pyyaml-include SUBDIR += py-pyyaml_env_tag SUBDIR += py-pyzipper diff --git a/devel/py-pyyaml-ft/Makefile b/devel/py-pyyaml-ft/Makefile new file mode 100644 index 000000000000..357da442c5b8 --- /dev/null +++ b/devel/py-pyyaml-ft/Makefile @@ -0,0 +1,26 @@ +PORTNAME= pyyaml-ft +PORTVERSION= 7.0.1 +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 cython pep517 + +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..0fb309609c59 --- /dev/null +++ b/devel/py-pyyaml-ft/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1748495685 +SHA256 (pyyaml_ft-7.0.1.tar.gz) = 3dc548f723e71ed2c1ba3df02e7c0ff4fd32c33bacd70e4c4b69e1bd3469f370 +SIZE (pyyaml_ft-7.0.1.tar.gz) = 140935 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..139562878c76 --- /dev/null +++ b/devel/py-pyyaml-ft/files/patch-setup.py @@ -0,0 +1,10 @@ +--- setup.py.orig 2025-04-28 18:32:18 UTC ++++ setup.py +@@ -1,6 +1,6 @@ import pathlib + import pathlib + +-NAME = 'PyYAML-ft' ++NAME = 'pyyaml-ft' + VERSION = '7.0.1' + 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. |
