Download raw body.
[wip] py-backports-zstd 1.2.0
On Fri, Dec 12, 2025 at 11:12:37AM +0000, Stuart Henderson wrote:
> On 2025/12/12 11:30, Theo Buehler wrote:
> > Attached a port for backports.zstd which is needed for py-flask-compress
> > with Python 3.13.
> >
> > One thing of note is the tight setuptools>=80 requirement patched out.
>
> this is showing up a lot, I should probably try updating that
>
> > More importantly, this conflicts with textproc/hotdoc due to sharing the
> > backports/__init__py file. I don't know how to handle this gracefully.
>
> hotdoc can stop doing that (ok with you Antoine?), but based on what
> it says in https://pypi.org/project/backports/ we should probably not
> install backports/__init_.py anyway.
Sure, OK.
Thanks.
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/textproc/hotdoc/Makefile,v
> diff -u -p -r1.23 Makefile
> --- Makefile 1 Nov 2025 11:16:43 -0000 1.23
> +++ Makefile 12 Dec 2025 11:12:06 -0000
> @@ -2,7 +2,7 @@ COMMENT= documentation tool micro-frame
>
> MODPY_DISTV= 0.17.4
> DISTNAME= hotdoc-${MODPY_DISTV}
> -REVISION= 1
> +REVISION= 2
>
> CATEGORIES= textproc
>
> @@ -19,6 +19,7 @@ MODULES= lang/python
>
> MODPY_PI= Yes
> MODPY_PYBUILD= setuptools
> +MODPY_TEST_LINK_SO= Yes
>
> BUILD_DEPENDS= devel/cmake/core
>
> @@ -37,14 +38,4 @@ RUN_DEPENDS= devel/py-appdirs \
> textproc/py-lxml \
> textproc/py-yaml
>
> -# XXX only include what we need from backports (unported)
> -SITES.pybackports= https://files.pythonhosted.org/packages/fc/25/dae014b114397a6f60578d7358bf5fcb103f71556e5363a50d7b42e9bc51/
> -DISTFILES.pybackports= backports.entry_points_selectable-1.3.0.tar.gz
> -post-install:
> - ${INSTALL_DATA_DIR} ${WRKINST}/${MODPY_SITEPKG}
> - cp -a ${WRKDIR}/backports.entry_points_selectable-1.3.0/backports/ \
> - ${WRKINST}/${MODPY_SITEPKG}
> - ${MODPY_COMPILEALL} ${WRKINST}/${MODPY_SITEPKG}/backports/
> -
> -# LGPLv2.1+
> .include <bsd.port.mk>
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/textproc/hotdoc/distinfo,v
> diff -u -p -r1.13 distinfo
> --- distinfo 31 Jan 2025 09:08:32 -0000 1.13
> +++ distinfo 12 Dec 2025 11:12:06 -0000
> @@ -1,4 +1,2 @@
> -SHA256 (backports.entry_points_selectable-1.3.0.tar.gz) = F6i0SucA+6VIaG3SdN3JHAYDcVZc1jgGwgodM5EXRuY=
> SHA256 (hotdoc-0.17.4.tar.gz) = xNXf9kfwOqh6HS0GA10oGe3QmbkWNeOy7jkIKTV66fw=
> -SIZE (backports.entry_points_selectable-1.3.0.tar.gz) = 9882
> SIZE (hotdoc-0.17.4.tar.gz) = 1957809
> Index: patches/patch-hotdoc_extensions_gi_utils_py
> ===================================================================
> RCS file: patches/patch-hotdoc_extensions_gi_utils_py
> diff -N patches/patch-hotdoc_extensions_gi_utils_py
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-hotdoc_extensions_gi_utils_py 12 Dec 2025 11:12:06 -0000
> @@ -0,0 +1,24 @@
> +From 51043c3ef889e36c8232280581598b875073ded7 Mon Sep 17 00:00:00 2001
> +From: Eli Schwartz <eschwartz93@gmail.com>
> +Date: Mon, 28 Apr 2025 17:40:21 -0400
> +Subject: [PATCH] avoid third-party backports dependency on sufficiently new
> + python
> +
> +Index: hotdoc/extensions/gi/utils.py
> +--- hotdoc/extensions/gi/utils.py.orig
> ++++ hotdoc/extensions/gi/utils.py
> +@@ -1,9 +1,13 @@
> + import os
> + from collections import namedtuple
> + import pathlib
> ++import sys
> + import traceback
> +
> +-from backports.entry_points_selectable import entry_points
> ++if sys.version_info >= (3, 10):
> ++ from importlib.metadata import entry_points
> ++else:
> ++ from backports.entry_points_selectable import entry_points
> +
> + from hotdoc.core.links import Link
> + from hotdoc.utils.loggable import info, debug
> Index: patches/patch-hotdoc_utils_utils_py
> ===================================================================
> RCS file: patches/patch-hotdoc_utils_utils_py
> diff -N patches/patch-hotdoc_utils_utils_py
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-hotdoc_utils_utils_py 12 Dec 2025 11:12:06 -0000
> @@ -0,0 +1,22 @@
> +From 51043c3ef889e36c8232280581598b875073ded7 Mon Sep 17 00:00:00 2001
> +From: Eli Schwartz <eschwartz93@gmail.com>
> +Date: Mon, 28 Apr 2025 17:40:21 -0400
> +Subject: [PATCH] avoid third-party backports dependency on sufficiently new
> + python
> +
> +Index: hotdoc/utils/utils.py
> +--- hotdoc/utils/utils.py.orig
> ++++ hotdoc/utils/utils.py
> +@@ -35,7 +35,11 @@ import importlib.util
> + from urllib.request import urlretrieve
> + from pathlib import Path
> +
> +-from backports.entry_points_selectable import entry_points
> ++if sys.version_info >= (3, 10):
> ++ from importlib.metadata import entry_points
> ++else:
> ++ from backports.entry_points_selectable import entry_points
> ++
> + try:
> + import importlib.metadata as meta
> + except ImportError:
> Index: patches/patch-setup_py
> ===================================================================
> RCS file: patches/patch-setup_py
> diff -N patches/patch-setup_py
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-setup_py 12 Dec 2025 11:12:06 -0000
> @@ -0,0 +1,18 @@
> +From 51043c3ef889e36c8232280581598b875073ded7 Mon Sep 17 00:00:00 2001
> +From: Eli Schwartz <eschwartz93@gmail.com>
> +Date: Mon, 28 Apr 2025 17:40:21 -0400
> +Subject: [PATCH] avoid third-party backports dependency on sufficiently new
> + python
> +
> +Index: setup.py
> +--- setup.py.orig
> ++++ setup.py
> +@@ -300,7 +300,7 @@ INSTALL_REQUIRES = [
> + 'wheezy.template',
> + 'toposort>=1.4',
> + 'importlib_metadata; python_version<"3.10"',
> +- 'backports.entry_points_selectable',
> ++ 'backports.entry_points_selectable; python_version<"3.10"',
> + ]
> +
> + # dbus-deviation requires sphinx, which requires python 3.5
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/textproc/hotdoc/pkg/PLIST,v
> diff -u -p -r1.9 PLIST
> --- pkg/PLIST 23 Oct 2025 13:20:22 -0000 1.9
> +++ pkg/PLIST 12 Dec 2025 11:12:06 -0000
> @@ -1,13 +1,5 @@
> bin/hotdoc
> bin/hotdoc_dep_printer
> -lib/python${MODPY_VERSION}/site-packages/backports/
> -lib/python${MODPY_VERSION}/site-packages/backports/__init__.py
> -lib/python${MODPY_VERSION}/site-packages/backports/${MODPY_PYCACHE}/
> -lib/python${MODPY_VERSION}/site-packages/backports/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
> -lib/python${MODPY_VERSION}/site-packages/backports/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc
> -lib/python${MODPY_VERSION}/site-packages/backports/${MODPY_PYCACHE}entry_points_selectable.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
> -lib/python${MODPY_VERSION}/site-packages/backports/${MODPY_PYCACHE}entry_points_selectable.${MODPY_PYC_MAGIC_TAG}pyc
> -lib/python${MODPY_VERSION}/site-packages/backports/entry_points_selectable.py
> lib/python${MODPY_VERSION}/site-packages/hotdoc/
> lib/python${MODPY_VERSION}/site-packages/hotdoc-${MODPY_DISTV}.dist-info/
> lib/python${MODPY_VERSION}/site-packages/hotdoc-${MODPY_DISTV}.dist-info/METADATA
--
Antoine
[wip] py-backports-zstd 1.2.0