Download raw body.
[wip] py-backports-zstd 1.2.0
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.
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
[wip] py-backports-zstd 1.2.0