git: ff5be8789f55 - main - biology/py-multiqc: Update to 1.35

From: Jason W. Bacon <jwb_at_FreeBSD.org>
Date: Tue, 15 Sep 2026 20:20:56 UTC
The branch main has been updated by jwb:

URL: https://cgit.FreeBSD.org/ports/commit/?id=ff5be8789f55aacbdf10179934a4aab8172bdc45

commit ff5be8789f55aacbdf10179934a4aab8172bdc45
Author:     Jason W. Bacon <jwb@FreeBSD.org>
AuthorDate: 2026-09-15 20:19:16 +0000
Commit:     Jason W. Bacon <jwb@FreeBSD.org>
CommitDate: 2026-09-15 20:20:55 +0000

    biology/py-multiqc: Update to 1.35
    
    Many fixes and new features since 1.25.2
    Changes: https://github.com/MultiQC/MultiQC/releases
    
    Reported by:    portscout
---
 biology/py-multiqc/Makefile                   | 45 ++++++++++++++++-----------
 biology/py-multiqc/distinfo                   |  6 ++--
 biology/py-multiqc/files/patch-pyproject.toml | 11 +++++++
 3 files changed, 41 insertions(+), 21 deletions(-)

diff --git a/biology/py-multiqc/Makefile b/biology/py-multiqc/Makefile
index d499374d419a..18886fbff1fe 100644
--- a/biology/py-multiqc/Makefile
+++ b/biology/py-multiqc/Makefile
@@ -1,6 +1,8 @@
 PORTNAME=	multiqc
-DISTVERSION=	1.25.2
-PORTREVISION=	5
+# Pinned: MultiQC has a massive, ever-changing dependency list and some
+# specific version requirements.  Don't expect an update to every new
+# minor release.
+DISTVERSION=	1.35
 CATEGORIES=	biology python
 MASTER_SITES=	PYPI
 PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
@@ -12,30 +14,37 @@ WWW=		https://github.com/MultiQC/MultiQC
 LICENSE=	GPLv3
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
-# Use either py-kaleido (not in ports yet) or py-orca + py-psutil
-RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}numpy>=1.16:math/py-numpy@${PY_FLAVOR} \
+BUILD_DEPENDS=	${PY_SETUPTOOLS} \
+		${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}boto3>0:www/py-boto3@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}click>0:devel/py-click@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}humanize>0:devel/py-humanize@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}importlib-metadata>0:devel/py-importlib-metadata@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}orca>0:devel/py-orca@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}psutil>0:sysutils/py-psutil@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}packaging>0:devel/py-packaging@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}pydantic2>=2.7.0:devel/py-pydantic2@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}typeguard>0:devel/py-typeguard@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}tqdm>0:misc/py-tqdm@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}Jinja2>=3.0.0:devel/py-Jinja2@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}rich-click>0:devel/py-rich-click@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}coloredlogs>0:devel/py-coloredlogs@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}plotly>=5.18:graphics/py-plotly@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}kaleido>=0.2.1:graphics/py-kaleido@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}markdown>0:textproc/py-markdown@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}rich>=10:textproc/py-rich@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}pyyaml>=4:devel/py-pyyaml@${PY_FLAVOR} \
+		${PYNUMPY} \
+		${PYTHON_PKGNAMEPREFIX}packaging>0:devel/py-packaging@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}spectra>=0.0.10:graphics/py-spectra@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}pillow>=10:graphics/py-pillow@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}natsort>0:devel/py-natsort@${PY_FLAVOR}
+		${PYTHON_PKGNAMEPREFIX}plotly>=5.18:graphics/py-plotly@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pyyaml>=4:devel/py-pyyaml@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}rich>=10:textproc/py-rich@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}rich-click>0:devel/py-rich-click@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}coloredlogs>0:devel/py-coloredlogs@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}spectra>=0.0.10:graphics/py-spectra@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pydantic2>=2.7.0:devel/py-pydantic2@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}typeguard>0:devel/py-typeguard@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}tqdm>0:misc/py-tqdm@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}python-dotenv>0:www/py-python-dotenv@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}natsort>0:devel/py-natsort@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}tiktoken>=0.7.0:textproc/py-tiktoken@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}jsonschema>0:devel/py-jsonschema@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}polars>=1.33.1:misc/py-polars@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pyarrow>0:databases/py-pyarrow@${PY_FLAVOR}
 
 USES=		python shebangfix
-USE_PYTHON=	autoplist concurrent distutils
+USE_PYTHON=	autoplist concurrent pep517
 
 SHEBANG_FILES=	multiqc/utils/config.py
 
diff --git a/biology/py-multiqc/distinfo b/biology/py-multiqc/distinfo
index cffb0194bdf5..3c5ee66fa374 100644
--- a/biology/py-multiqc/distinfo
+++ b/biology/py-multiqc/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1732194535
-SHA256 (multiqc-1.25.2.tar.gz) = 06ee04a9747e9071bfa4c4ed96df9ad5bdfdb977755b6567053d4ede7e0f387a
-SIZE (multiqc-1.25.2.tar.gz) = 4326758
+TIMESTAMP = 1788787989
+SHA256 (multiqc-1.35.tar.gz) = 5a4aa6480e6def2f9c0af2893358bf7ec5c304d606ecf613cd25ddcd0e244e77
+SIZE (multiqc-1.35.tar.gz) = 5451760
diff --git a/biology/py-multiqc/files/patch-pyproject.toml b/biology/py-multiqc/files/patch-pyproject.toml
new file mode 100644
index 000000000000..a697046ddbd7
--- /dev/null
+++ b/biology/py-multiqc/files/patch-pyproject.toml
@@ -0,0 +1,11 @@
+--- pyproject.toml.orig	2025-06-09 13:19:58 UTC
++++ pyproject.toml
+@@ -11,7 +11,7 @@ dependencies = [
+     "humanize",
+     "importlib_metadata",
+     "jinja2>=3.0.0",
+-    "kaleido==0.2.1",     # for flat plot export
++    "kaleido>=0.2.1",     # for flat plot export
+     "markdown",
+     "numpy",
+     "packaging",