diff --git a/devel/py-pytest-html/Makefile b/devel/py-pytest-html/Makefile
index a3c750796417..7f33ff61762d 100644
--- a/devel/py-pytest-html/Makefile
+++ b/devel/py-pytest-html/Makefile
@@ -1,27 +1,30 @@
PORTNAME= pytest-html
-PORTVERSION= 3.2.0
+PORTVERSION= 4.1.1
CATEGORIES= devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+DISTNAME= ${PORTNAME:S/-/_/g}-${DISTVERSION}
MAINTAINER= matthew@FreeBSD.org
COMMENT= Pytest plugin for generating html reports
WWW= https://github.com/pytest-dev/pytest-html
LICENSE= MPL20
LICENSE_FILE= ${WRKSRC}/LICENSE
-BUILD_DEPENDS= ${PY_SETUPTOOLS} \
- ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=3.5.0:devel/py-setuptools-scm@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}setuptools_scm_git_archive>=1.1:devel/py-setuptools_scm_git_archive@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}wheel>=0.33.6:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}py>=1.8.2:devel/py-py@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}pytest>=5.0:devel/py-pytest@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}pytest-metadata>0:devel/py-pytest-metadata@${PY_FLAVOR}
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatch-vcs>=0.3:devel/py-hatch-vcs@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}hatchling>=1.13:devel/py-hatchling@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Jinja2>=3.0:devel/py-Jinja2@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytest>=7.0:devel/py-pytest@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytest-metadata>=2.0:devel/py-pytest-metadata@${PY_FLAVOR}
+
+# Note: Running the tests requires being able to spin up a docker container,
+# See https://pytest-html.readthedocs.io/en/latest/development.html#running-tests
+# This is unfortunately not possible on FreeBSD.
USES= python
-USE_PYTHON= autoplist distutils
+USE_PYTHON= autoplist pep517
NO_ARCH= yes
.include
diff --git a/devel/py-pytest-html/distinfo b/devel/py-pytest-html/distinfo
index 6f6434128545..0a14bd0c74a3 100644
--- a/devel/py-pytest-html/distinfo
+++ b/devel/py-pytest-html/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1666851932
-SHA256 (pytest-html-3.2.0.tar.gz) = c4e2f4bb0bffc437f51ad2174a8a3e71df81bbc2f6894604e604af18fbe687c3
-SIZE (pytest-html-3.2.0.tar.gz) = 41955
+TIMESTAMP = 1740237617
+SHA256 (pytest_html-4.1.1.tar.gz) = 70a01e8ae5800f4a074b56a4cb1025c8f4f9b038bba5fe31e3c98eb996686f07
+SIZE (pytest_html-4.1.1.tar.gz) = 150773