summaryrefslogtreecommitdiff
path: root/benchmarks
diff options
context:
space:
mode:
Diffstat (limited to 'benchmarks')
-rw-r--r--benchmarks/Makefile1
-rw-r--r--benchmarks/ali/Makefile2
-rw-r--r--benchmarks/bombardier/Makefile2
-rw-r--r--benchmarks/clpeak/Makefile2
-rw-r--r--benchmarks/clpeak/distinfo6
-rw-r--r--benchmarks/ddosify/Makefile2
-rw-r--r--benchmarks/fio/Makefile2
-rw-r--r--benchmarks/fio/distinfo6
-rw-r--r--benchmarks/hey/Makefile2
-rw-r--r--benchmarks/hipercontracer/Makefile13
-rw-r--r--benchmarks/hipercontracer/distinfo6
-rw-r--r--benchmarks/hipercontracer/pkg-plist14
-rw-r--r--benchmarks/hyperfine/Makefile2
-rw-r--r--benchmarks/inferno/Makefile2
-rw-r--r--benchmarks/iorate/Makefile3
-rw-r--r--benchmarks/iperf3/Makefile2
-rw-r--r--benchmarks/iperf3/distinfo6
-rw-r--r--benchmarks/lzbench/Makefile2
-rw-r--r--benchmarks/nqueens/Makefile3
-rw-r--r--benchmarks/plow/Makefile2
-rw-r--r--benchmarks/py-locust-cloud/Makefile28
-rw-r--r--benchmarks/py-locust-cloud/distinfo3
-rw-r--r--benchmarks/py-locust-cloud/pkg-descr6
-rw-r--r--benchmarks/py-locust/Makefile59
-rw-r--r--benchmarks/py-locust/distinfo8
-rw-r--r--benchmarks/py-locust/files/extra-EXAMPLES-basic.py26
-rw-r--r--benchmarks/py-locust/files/extra-EXAMPLES-browse_docs_sequence_test.py50
-rw-r--r--benchmarks/py-locust/files/extra-EXAMPLES-browse_docs_test.py49
-rw-r--r--benchmarks/py-locust/files/extra-EXAMPLES-custom_wait_function.py51
-rw-r--r--benchmarks/py-locust/files/extra-EXAMPLES-custom_xmlrpc_client.py54
-rw-r--r--benchmarks/py-locust/files/extra-EXAMPLES-dynamice_user_credentials.py25
-rw-r--r--benchmarks/py-locust/files/extra-EXAMPLES-events.py69
-rw-r--r--benchmarks/py-locust/files/extra-EXAMPLES-multiple_hosts.py31
-rw-r--r--benchmarks/py-locust/files/extra-EXAMPLES-semaphore_wait.py25
-rw-r--r--benchmarks/py-locust/files/patch-locust_main.py11
-rw-r--r--benchmarks/py-locust/pkg-plist182
-rw-r--r--benchmarks/rubygem-benchmark/Makefile2
-rw-r--r--benchmarks/rubygem-benchmark/distinfo6
-rw-r--r--benchmarks/uica/Makefile2
-rw-r--r--benchmarks/uica/pkg-plist36
-rw-r--r--benchmarks/vegeta/Makefile2
-rw-r--r--benchmarks/vkmark/Makefile1
-rw-r--r--benchmarks/vkpeak/Makefile8
-rw-r--r--benchmarks/vkpeak/distinfo14
44 files changed, 352 insertions, 476 deletions
diff --git a/benchmarks/Makefile b/benchmarks/Makefile
index 78b25950bdc5..14c07e206c11 100644
--- a/benchmarks/Makefile
+++ b/benchmarks/Makefile
@@ -79,6 +79,7 @@
SUBDIR += py-asv
SUBDIR += py-asv-runner
SUBDIR += py-locust
+ SUBDIR += py-locust-cloud
SUBDIR += py-naarad
SUBDIR += py-throughpy
SUBDIR += py-zopkio
diff --git a/benchmarks/ali/Makefile b/benchmarks/ali/Makefile
index 2f7a201ace5f..ee86043cd12e 100644
--- a/benchmarks/ali/Makefile
+++ b/benchmarks/ali/Makefile
@@ -1,7 +1,7 @@
PORTNAME= ali
PORTVERSION= 0.7.5
DISTVERSIONPREFIX= v
-PORTREVISION= 25
+PORTREVISION= 27
CATEGORIES= benchmarks
MAINTAINER= olgeni@FreeBSD.org
diff --git a/benchmarks/bombardier/Makefile b/benchmarks/bombardier/Makefile
index 8602e6f135d8..5c657e104100 100644
--- a/benchmarks/bombardier/Makefile
+++ b/benchmarks/bombardier/Makefile
@@ -1,7 +1,7 @@
PORTNAME= bombardier
PORTVERSION= 1.2.6
DISTVERSIONPREFIX= v
-PORTREVISION= 12
+PORTREVISION= 14
CATEGORIES= benchmarks
MAINTAINER= danilo@FreeBSD.org
diff --git a/benchmarks/clpeak/Makefile b/benchmarks/clpeak/Makefile
index 969b34154a17..3a17c48baed7 100644
--- a/benchmarks/clpeak/Makefile
+++ b/benchmarks/clpeak/Makefile
@@ -1,5 +1,5 @@
PORTNAME= clpeak
-DISTVERSION= 1.1.4
+DISTVERSION= 1.1.5
CATEGORIES= benchmarks
MAINTAINER= jbeich@FreeBSD.org
diff --git a/benchmarks/clpeak/distinfo b/benchmarks/clpeak/distinfo
index 6c6ee535d51c..758db3103e66 100644
--- a/benchmarks/clpeak/distinfo
+++ b/benchmarks/clpeak/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1735016240
-SHA256 (krrishnarraj-clpeak-1.1.4_GH0.tar.gz) = c9ba6d46d17e94fe8074821047a6d59b011e600293ec27b8c52dd04370fcff5d
-SIZE (krrishnarraj-clpeak-1.1.4_GH0.tar.gz) = 310482
+TIMESTAMP = 1749807774
+SHA256 (krrishnarraj-clpeak-1.1.5_GH0.tar.gz) = 31620ef28848108f6868e57e100412aa009399ba2cd021afd3b64563711fa49f
+SIZE (krrishnarraj-clpeak-1.1.5_GH0.tar.gz) = 310669
diff --git a/benchmarks/ddosify/Makefile b/benchmarks/ddosify/Makefile
index b8bdf9a3e682..d348f0882e54 100644
--- a/benchmarks/ddosify/Makefile
+++ b/benchmarks/ddosify/Makefile
@@ -1,7 +1,7 @@
PORTNAME= ddosify
DISTVERSIONPREFIX= v
DISTVERSION= 2.6.0
-PORTREVISION= 2
+PORTREVISION= 4
CATEGORIES= benchmarks
MAINTAINER= grembo@FreeBSD.org
diff --git a/benchmarks/fio/Makefile b/benchmarks/fio/Makefile
index 5c5c4ee39624..30a8002bd2f3 100644
--- a/benchmarks/fio/Makefile
+++ b/benchmarks/fio/Makefile
@@ -1,5 +1,5 @@
PORTNAME= fio
-DISTVERSION= 3.39
+DISTVERSION= 3.40
CATEGORIES= benchmarks
MASTER_SITES= https://brick.kernel.dk/snaps/
diff --git a/benchmarks/fio/distinfo b/benchmarks/fio/distinfo
index 2d3120955451..31c9440f1396 100644
--- a/benchmarks/fio/distinfo
+++ b/benchmarks/fio/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1742111635
-SHA256 (fio-3.39.tar.bz2) = 1c8213117a036486d24339a0e90654b07d1f4621d180c1d0cb9b6aa121ba88ec
-SIZE (fio-3.39.tar.bz2) = 7550641
+TIMESTAMP = 1747894793
+SHA256 (fio-3.40.tar.bz2) = cc1b5c8ef9efa20d44fe90b59515fddf8b4e884d782a0b33b26a70ab48ec04c1
+SIZE (fio-3.40.tar.bz2) = 7557078
diff --git a/benchmarks/hey/Makefile b/benchmarks/hey/Makefile
index f0574f1a2e5a..9b39f49162c3 100644
--- a/benchmarks/hey/Makefile
+++ b/benchmarks/hey/Makefile
@@ -1,7 +1,7 @@
PORTNAME= hey
PORTVERSION= 0.1.4
DISTVERSIONPREFIX= v
-PORTREVISION= 25
+PORTREVISION= 27
CATEGORIES= benchmarks
MAINTAINER= adamw@FreeBSD.org
diff --git a/benchmarks/hipercontracer/Makefile b/benchmarks/hipercontracer/Makefile
index 54dbde36990b..8016c3cf2384 100644
--- a/benchmarks/hipercontracer/Makefile
+++ b/benchmarks/hipercontracer/Makefile
@@ -1,5 +1,5 @@
PORTNAME= hipercontracer
-DISTVERSION= 2.0.14
+DISTVERSION= 2.1.0
CATEGORIES= benchmarks
MASTER_SITES= https://www.nntb.no/~dreibh/hipercontracer/download/
@@ -23,14 +23,15 @@ RUN_DEPENDS= getopt>=0:misc/getopt
USES= cmake compiler:c++20-lang desktop-file-utils python \
shared-mime-info shebangfix ssl tar:xz
USE_LDCONFIG= yes
-# Work-around for build issue #285706 on ARM (https://bugs.freebsd.org/285706):
-MAKE_ENV= OMP_NUM_THREADS=1
SHEBANG_FILES= src/results-examples/r-install-dependencies \
src/results-examples/r-ping-example \
src/results-examples/r-traceroute-example \
src/TestDB/generate-test-certificates
+# Work-around for build issue on ARM (https://bugs.freebsd.org/285706):
+MAKE_ENV= OMP_NUM_THREADS=1
+
PLIST_SUB= DISTVERSION=${DISTVERSION}
OPTIONS_DEFINE= COLLECTOR DBEAVERTOOLS DBSHELL ICONS IMPMARIADB \
@@ -39,7 +40,7 @@ OPTIONS_DEFINE= COLLECTOR DBEAVERTOOLS DBSHELL ICONS IMPMARIADB \
OPTIONS_DEFAULT= COLLECTOR DBEAVERTOOLS DBSHELL ICONS IMPMARIADB \
IMPMONGO IMPORTER IMPPGSQL NODE QUERYTOOL RESULTSTOOL \
RTUNNEL SYNC TRIGGER UDPECHO VIEWERTOOL
-COLLECTOR_DESC= Build HiPerConTracer Collector Tools"
+COLLECTOR_DESC= Build HiPerConTracer Collector Tools
DBEAVERTOOLS_DESC= Build DBeaver Tools
DBSHELL_DESC= Build DBShell
ICONS_DESC= Build Icons and Logo Files
@@ -47,10 +48,10 @@ IMPMARIADB_DESC= Enable MariaDB/MySQL support for HiPerConTracer Importer Tool
IMPMONGO_DESC= Enable MongoDB support for HiPerConTracer Importer Tool
IMPORTER_DESC= Build HiPerConTracer Importer Tool
IMPPGSQL_DESC= Enable PostgreSQL support for HiPerConTracer Importer Tool
-NODE_DESC= Build HiPerConTracer Node Tools"
+NODE_DESC= Build HiPerConTracer Node Tools
QUERYTOOL_DESC= Build HiPerConTracer Query Tool
RESULTSTOOL_DESC= Build HiPerConTracer Results Tool
-RTUNNEL_DESC= Build HiPerConTracer Reverse Tunnel Tool"
+RTUNNEL_DESC= Build HiPerConTracer Reverse Tunnel Tool
SYNC_DESC= Build HiPerConTracer Synchronisation Tool
TRIGGER_DESC= Build HiPerConTracer Trigger Tool
UDPECHO_DESC= Build UDP Echo Server
diff --git a/benchmarks/hipercontracer/distinfo b/benchmarks/hipercontracer/distinfo
index 03b2d4e16f23..9d8bf7e722f2 100644
--- a/benchmarks/hipercontracer/distinfo
+++ b/benchmarks/hipercontracer/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1745779939
-SHA256 (hipercontracer-2.0.14.tar.xz) = 2834e134444342af2065d4e2d3195b4ecb199e7adae66f2a641bb4dbc5cd52fa
-SIZE (hipercontracer-2.0.14.tar.xz) = 2524868
+TIMESTAMP = 1750255218
+SHA256 (hipercontracer-2.1.0.tar.xz) = ba8f71d0783bd1642ac314026542e4a7c5da0daf3fff5b287b58a8ef4c6d629e
+SIZE (hipercontracer-2.1.0.tar.xz) = 2532336
diff --git a/benchmarks/hipercontracer/pkg-plist b/benchmarks/hipercontracer/pkg-plist
index a6dfd27c5abc..ea255b9fef7f 100644
--- a/benchmarks/hipercontracer/pkg-plist
+++ b/benchmarks/hipercontracer/pkg-plist
@@ -18,11 +18,14 @@ bin/make-dbeaver-configuration
bin/pipe-checksum
bin/udp-echo-server
include/hipercontracer/check.h
+include/hipercontracer/compressortype.h
include/hipercontracer/destinationinfo.h
+include/hipercontracer/inputstream.h
include/hipercontracer/iomodule-base.h
include/hipercontracer/iomodule-icmp.h
include/hipercontracer/iomodule-udp.h
include/hipercontracer/logger.h
+include/hipercontracer/outputstream.h
include/hipercontracer/ping.h
include/hipercontracer/resultentry.h
include/hipercontracer/resultswriter.h
@@ -37,15 +40,16 @@ include/universalimporter/databaseclient-mariadb.h
include/universalimporter/databaseclient-mongodb.h
include/universalimporter/databaseclient-postgresql.h
include/universalimporter/importer-configuration.h
-include/universalimporter/logger.h
include/universalimporter/reader-base.h
include/universalimporter/results-exception.h
-include/universalimporter/tools.h
include/universalimporter/universal-importer.h
include/universalimporter/worker.h
lib/libhipercontracer.so
lib/libhipercontracer.so.2
lib/libhipercontracer.so.%%DISTVERSION%%
+lib/libhpctio.so
+lib/libhpctio.so.2
+lib/libhpctio.so.%%DISTVERSION%%
lib/libuniversalimporter.so
lib/libuniversalimporter.so.2
lib/libuniversalimporter.so.%%DISTVERSION%%
@@ -75,14 +79,20 @@ share/bash-completion/completions/udp-echo-server
%%DATADIR%%/SQL/README-PostgreSQL.md
%%DATADIR%%/SQL/mariadb-database.sql
%%DATADIR%%/SQL/mariadb-delete-all-rows.sql
+%%DATADIR%%/SQL/mariadb-functions.sql
+%%DATADIR%%/SQL/mariadb-procedures.sql
%%DATADIR%%/SQL/mariadb-schema.sql
%%DATADIR%%/SQL/mariadb-test.sql
%%DATADIR%%/SQL/mariadb-users.sql
+%%DATADIR%%/SQL/mariadb-views.sql
%%DATADIR%%/SQL/postgresql-database.sql
%%DATADIR%%/SQL/postgresql-delete-all-rows.sql
+%%DATADIR%%/SQL/postgresql-functions.sql
+%%DATADIR%%/SQL/postgresql-procedures.sql
%%DATADIR%%/SQL/postgresql-schema.sql
%%DATADIR%%/SQL/postgresql-test.sql
%%DATADIR%%/SQL/postgresql-users.sql
+%%DATADIR%%/SQL/postgresql-views.sql
%%DATADIR%%/TestDB/0-make-configurations
%%DATADIR%%/TestDB/1-install-database
%%DATADIR%%/TestDB/2-initialise-database
diff --git a/benchmarks/hyperfine/Makefile b/benchmarks/hyperfine/Makefile
index c84d45dfa1e1..ed5b14cb8f71 100644
--- a/benchmarks/hyperfine/Makefile
+++ b/benchmarks/hyperfine/Makefile
@@ -1,7 +1,7 @@
PORTNAME= hyperfine
DISTVERSIONPREFIX= v
DISTVERSION= 1.19.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= benchmarks
MAINTAINER= pizzamig@FreeBSD.org
diff --git a/benchmarks/inferno/Makefile b/benchmarks/inferno/Makefile
index 2c718bfa7bcf..9d3359c762e4 100644
--- a/benchmarks/inferno/Makefile
+++ b/benchmarks/inferno/Makefile
@@ -1,7 +1,7 @@
PORTNAME= inferno
DISTVERSIONPREFIX= v
DISTVERSION= 0.12.2
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= benchmarks
MAINTAINER= yuri@FreeBSD.org
diff --git a/benchmarks/iorate/Makefile b/benchmarks/iorate/Makefile
index e201f96ea75d..640b24d90318 100644
--- a/benchmarks/iorate/Makefile
+++ b/benchmarks/iorate/Makefile
@@ -4,13 +4,12 @@ PORTREVISION= 1
CATEGORIES= benchmarks
MASTER_SITES= http://sites.google.com/site/vwiorate/downloads/${DISTVERSION}/
DISTNAME= ${PORTNAME}-${PORTVERSION}-src
-EXTRACT_SUFX= .tar
MAINTAINER= blttll@gmail.com
COMMENT= General purpose storage I/O benchmarking tool
WWW= http://iorate.org/
-USES= alias bison
+USES= alias bison tar
MAKEFILE= makefile
MAKE_ARGS= CC="${CC}"
NO_WRKSUBDIR= yes
diff --git a/benchmarks/iperf3/Makefile b/benchmarks/iperf3/Makefile
index 6d04ba21cc79..b38c8e65aa75 100644
--- a/benchmarks/iperf3/Makefile
+++ b/benchmarks/iperf3/Makefile
@@ -1,5 +1,5 @@
PORTNAME= iperf
-DISTVERSION= 3.18
+DISTVERSION= 3.19
CATEGORIES= benchmarks
MASTER_SITES= https://github.com/esnet/${PORTNAME}/releases/download/${DISTVERSION}/ \
https://downloads.es.net/pub/${PORTNAME}/
diff --git a/benchmarks/iperf3/distinfo b/benchmarks/iperf3/distinfo
index f0309d5edd9e..4eedbb31519b 100644
--- a/benchmarks/iperf3/distinfo
+++ b/benchmarks/iperf3/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1734136688
-SHA256 (iperf-3.18.tar.gz) = c0618175514331e766522500e20c94bfb293b4424eb27d7207fb427b88d20bab
-SIZE (iperf-3.18.tar.gz) = 688037
+TIMESTAMP = 1747435695
+SHA256 (iperf-3.19.tar.gz) = 040161da1555ec7411a9d81191049830ef37717d429a94ee6cf0842618e0e29c
+SIZE (iperf-3.19.tar.gz) = 692569
diff --git a/benchmarks/lzbench/Makefile b/benchmarks/lzbench/Makefile
index 7ba7e581ae85..effaa5f3d436 100644
--- a/benchmarks/lzbench/Makefile
+++ b/benchmarks/lzbench/Makefile
@@ -22,6 +22,8 @@ post-patch:
${WRKSRC}/_lzbench/lzbench.h
@${REINPLACE_CMD} -e 's,shell echo|$$(CC),& 2>/dev/null,' \
${WRKSRC}/Makefile
+ @${REINPLACE_CMD} -e '/^#if defined(__FreeBSD__)/,+1s,machine,sys,' \
+ ${WRKSRC}/kanzi-cpp/src/Memory.hpp
@${REINPLACE_CMD} -e '/pithy_Load64/s,vld1_u64(,&(uint64_t *),' \
${WRKSRC}/pithy/pithy.cpp
@${REINPLACE_CMD} -e '/^#if/s,defined(__aarch64__),& ||\
diff --git a/benchmarks/nqueens/Makefile b/benchmarks/nqueens/Makefile
index 3759607eedfa..eb710fc1d10b 100644
--- a/benchmarks/nqueens/Makefile
+++ b/benchmarks/nqueens/Makefile
@@ -3,12 +3,13 @@ PORTVERSION= 1.0
CATEGORIES= benchmarks
MASTER_SITES= http://www.arch.cs.titech.ac.jp/~kise/nq/package/
DISTNAME= qn24b-version${PORTVERSION}
-EXTRACT_SUFX= .tgz
MAINTAINER= nakaji@jp.freebsd.org
COMMENT= N-queens benchmark
WWW= https://www.arch.cs.titech.ac.jp/~kise/nq/index.htm
+USES= tar:tgz
+
WRKSRC= ${WRKDIR}/version${PORTVERSION}
OPTIONS_DEFINE= MPI STATIC OPTIMIZED_CFLAGS
diff --git a/benchmarks/plow/Makefile b/benchmarks/plow/Makefile
index d1b5eb3b3eb5..d0ae7a7a0929 100644
--- a/benchmarks/plow/Makefile
+++ b/benchmarks/plow/Makefile
@@ -1,7 +1,7 @@
PORTNAME= plow
DISTVERSIONPREFIX= v
DISTVERSION= 1.3.2
-PORTREVISION= 2
+PORTREVISION= 4
CATEGORIES= benchmarks
MAINTAINER= dutra@FreeBSD.org
diff --git a/benchmarks/py-locust-cloud/Makefile b/benchmarks/py-locust-cloud/Makefile
new file mode 100644
index 000000000000..933b7f20d339
--- /dev/null
+++ b/benchmarks/py-locust-cloud/Makefile
@@ -0,0 +1,28 @@
+PORTNAME= locust-cloud
+DISTVERSION= 1.24.2
+CATEGORIES= benchmarks www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+DISTNAME= locust_cloud-${PORTVERSION}
+
+MAINTAINER= dtxdf@FreeBSD.org
+COMMENT= Hosted version of Locust that allows you to run distributed load tests
+WWW= https://locust.cloud/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatch-vcs>=0:devel/py-hatch-vcs@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}hatchling>=0:devel/py-hatchling@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}configargparse>=0:devel/py-configargparse@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}gevent>=0:devel/py-gevent@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}platformdirs>=0:devel/py-platformdirs@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}python-socketio>=0:devel/py-python-socketio@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}tomli>=0:textproc/py-tomli@${PY_FLAVOR}
+
+USES= python
+USE_PYTHON= autoplist pep517
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/benchmarks/py-locust-cloud/distinfo b/benchmarks/py-locust-cloud/distinfo
new file mode 100644
index 000000000000..5b7c6e51fbb6
--- /dev/null
+++ b/benchmarks/py-locust-cloud/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1750799571
+SHA256 (locust_cloud-1.24.2.tar.gz) = a2656537ff367e6d4d4673477ba9e81ed73a8423a71573cd2512248740eded77
+SIZE (locust_cloud-1.24.2.tar.gz) = 451122
diff --git a/benchmarks/py-locust-cloud/pkg-descr b/benchmarks/py-locust-cloud/pkg-descr
new file mode 100644
index 000000000000..ce27fab9cbc4
--- /dev/null
+++ b/benchmarks/py-locust-cloud/pkg-descr
@@ -0,0 +1,6 @@
+Locust Cloud is a hosted version of Locust that allows you to run
+distributed load tests without having to set up and maintain your
+own infrastructure.
+
+It also allows more detailed reporting and analysis, as well as
+storing historical test results and tracking them over time.
diff --git a/benchmarks/py-locust/Makefile b/benchmarks/py-locust/Makefile
index c5f1d2725067..02004755443e 100644
--- a/benchmarks/py-locust/Makefile
+++ b/benchmarks/py-locust/Makefile
@@ -1,10 +1,13 @@
PORTNAME= locust
-PORTVERSION= 0.11.0
-PORTREVISION= 2
+DISTVERSION= 2.37.10
CATEGORIES= benchmarks www python
-MASTER_SITES= PYPI
+MASTER_SITES= PYPI \
+ https://github.com/locustio/locust/archive/refs/tags/:EXTRA
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
-DISTNAME= locustio-${PORTVERSION}
+DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \
+ ${PORTVERSION}${EXTRACT_SUFX}:EXTRA
+DIST_SUBDIR= ${PORTNAME}
+EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
MAINTAINER= egypcio@FreeBSD.org
COMMENT= Python utility for doing easy, distributed load testing
@@ -13,26 +16,50 @@ WWW= https://locust.io/
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}flask>=0.10.1:www/py-flask@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}gevent>=1.2.2:devel/py-gevent@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}msgpack>=0.4.2:devel/py-msgpack@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}pyzmq>=16.0.2:net/py-pyzmq@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}requests>=2.9.1:www/py-requests@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}six>=1.10.0:devel/py-six@${PY_FLAVOR}
-TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mock>=0:devel/py-mock@${PY_FLAVOR}
+BUILD_DEPENDS= ${PY_SETUPTOOLS} \
+ ${PYTHON_PKGNAMEPREFIX}hatch-vcs>=0:devel/py-hatch-vcs@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}hatchling>=0:devel/py-hatchling@${PY_FLAVOR}
+RUN_DEPENDS= ${PY_SETUPTOOLS} \
+ ${PYTHON_PKGNAMEPREFIX}configargparse>=0:devel/py-configargparse@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}Flask-Cors>=0:www/py-flask-cors@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}Flask-Login>=0:www/py-flask-login@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}flask>=0:www/py-flask@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}gevent>=0:devel/py-gevent@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}geventhttpclient>=0:devel/py-geventhttpclient@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}locust-cloud>=0:benchmarks/py-locust-cloud@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}msgpack>=0:devel/py-msgpack@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}psutil>=0:sysutils/py-psutil@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pyzmq>=0:net/py-pyzmq@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}requests>=0:www/py-requests@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}tomli>=0:textproc/py-tomli@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}typing-extensions>=0:devel/py-typing-extensions@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}werkzeug>=0:www/py-werkzeug@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mock>=0:devel/py-mock@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pyquery>=0:devel/py-pyquery@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytest>0:devel/py-pytest@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}retry2>=0:devel/py-retry2@${PY_FLAVOR}
USES= python
-USE_PYTHON= autoplist concurrent distutils
+USE_PYTHON= cryptography_test pep517
NO_ARCH= yes
OPTIONS_DEFINE= EXAMPLES
-do-test:
- @cd ${WRKSRC} && ${PYTHON_CMD} ${PYDISTUTILS_SETUP} test
+EXTRA_DIRNAME= ${PORTNAME}-${PORTVERSION}-extra
+
+post-extract:
+ @${MKDIR} ${WRKDIR}/${EXTRA_DIRNAME}
+ @${TAR} --strip-components=1 -xf ${_DISTDIR}/${PORTVERSION}${EXTRACT_SUFX} -C ${WRKDIR}/${EXTRA_DIRNAME}
post-install-EXAMPLES-on:
- ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
- ${INSTALL_DATA} ${FILESDIR}/extra-EXAMPLES* ${STAGEDIR}${EXAMPLESDIR}
+ @${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
+ ${INSTALL_DATA} ${WRKDIR}/${EXTRA_DIRNAME}/examples/*.py ${STAGEDIR}${EXAMPLESDIR}
+
+do-test:
+ @cd ${WRKDIR}/${EXTRA_DIRNAME}/locust/test && ${COPYTREE_SHARE} \
+ . ${WRKSRC}/locust/test
+ @cd ${WRKSRC}/locust/test && ${SETENVI} ${WRK_ENV} ${TEST_ENV} ${PYTHON_CMD} -m pytest \
+ -v -rs -o addopts=
.include <bsd.port.mk>
diff --git a/benchmarks/py-locust/distinfo b/benchmarks/py-locust/distinfo
index 2d5d7be1a1e3..547e80b05734 100644
--- a/benchmarks/py-locust/distinfo
+++ b/benchmarks/py-locust/distinfo
@@ -1,3 +1,5 @@
-TIMESTAMP = 1555083697
-SHA256 (locustio-0.11.0.tar.gz) = 93404f831114791b0756325c53b08bff73f048eeb69688be657629feaa62b507
-SIZE (locustio-0.11.0.tar.gz) = 229879
+TIMESTAMP = 1749763850
+SHA256 (locust/locust-2.37.10.tar.gz) = 4ae1df1f5155cc7df5aa3eee333c1fa87c1a3ac4815a47f7e62d8cdeadc1fd45
+SIZE (locust/locust-2.37.10.tar.gz) = 2252603
+SHA256 (locust/2.37.10.tar.gz) = 683d072ad675ba9a03cbd70146d1433e40a1eabee4d1d8af45fdf05fe31a42f2
+SIZE (locust/2.37.10.tar.gz) = 5706321
diff --git a/benchmarks/py-locust/files/extra-EXAMPLES-basic.py b/benchmarks/py-locust/files/extra-EXAMPLES-basic.py
deleted file mode 100644
index c34610e8df8e..000000000000
--- a/benchmarks/py-locust/files/extra-EXAMPLES-basic.py
+++ /dev/null
@@ -1,26 +0,0 @@
-from locust import HttpLocust, TaskSet, task
-
-
-def index(l):
- l.client.get("/")
-
-def stats(l):
- l.client.get("/stats/requests")
-
-class UserTasks(TaskSet):
- # one can specify tasks like this
- tasks = [index, stats]
-
- # but it might be convenient to use the @task decorator
- @task
- def page404(self):
- self.client.get("/does_not_exist")
-
-class WebsiteUser(HttpLocust):
- """
- Locust user class that does requests to the locust web server running on localhost
- """
- host = "http://127.0.0.1:8089"
- min_wait = 2000
- max_wait = 5000
- task_set = UserTasks
diff --git a/benchmarks/py-locust/files/extra-EXAMPLES-browse_docs_sequence_test.py b/benchmarks/py-locust/files/extra-EXAMPLES-browse_docs_sequence_test.py
deleted file mode 100644
index b780c67e9879..000000000000
--- a/benchmarks/py-locust/files/extra-EXAMPLES-browse_docs_sequence_test.py
+++ /dev/null
@@ -1,50 +0,0 @@
-# This locust test script example will simulate a user
-# browsing the Locust documentation on https://docs.locust.io/
-
-import random
-from locust import HttpLocust, TaskSquence, seq_task, task
-from pyquery import PyQuery
-
-
-class BrowseDocumentationSequence(TaskSquence):
- def on_start(self):
- self.urls_on_current_page = self.toc_urls
-
- # assume all users arrive at the index page
- @seq_task(1)
- def index_page(self):
- r = self.client.get("/")
- pq = PyQuery(r.content)
- link_elements = pq(".toctree-wrapper a.internal")
- self.toc_urls = [
- l.attrib["href"] for l in link_elements
- ]
-
- @seq_task(2)
- @task(50)
- def load_page(self, url=None):
- url = random.choice(self.toc_urls)
- r = self.client.get(url)
- pq = PyQuery(r.content)
- link_elements = pq("a.internal")
- self.urls_on_current_page = [
- l.attrib["href"] for l in link_elements
- ]
-
- @seq_task(3)
- @task(30)
- def load_sub_page(self):
- url = random.choice(self.urls_on_current_page)
- r = self.client.get(url)
-
-
-class AwesomeUser(HttpLocust):
- task_set = BrowseDocumentationSequence
- host = "https://docs.locust.io/en/latest/"
-
- # we assume someone who is browsing the Locust docs,
- # generally has a quite long waiting time (between
- # 20 and 600 seconds), since there's a bunch of text
- # on each page
- min_wait = 20 * 1000
- max_wait = 600 * 1000
diff --git a/benchmarks/py-locust/files/extra-EXAMPLES-browse_docs_test.py b/benchmarks/py-locust/files/extra-EXAMPLES-browse_docs_test.py
deleted file mode 100644
index b8a42a7c2bd1..000000000000
--- a/benchmarks/py-locust/files/extra-EXAMPLES-browse_docs_test.py
+++ /dev/null
@@ -1,49 +0,0 @@
-# This locust test script example will simulate a user
-# browsing the Locust documentation on https://docs.locust.io/
-
-import random
-from locust import HttpLocust, TaskSet, task
-from pyquery import PyQuery
-
-
-class BrowseDocumentation(TaskSet):
- def on_start(self):
- # assume all users arrive at the index page
- self.index_page()
- self.urls_on_current_page = self.toc_urls
-
- @task(10)
- def index_page(self):
- r = self.client.get("/")
- pq = PyQuery(r.content)
- link_elements = pq(".toctree-wrapper a.internal")
- self.toc_urls = [
- l.attrib["href"] for l in link_elements
- ]
-
- @task(50)
- def load_page(self, url=None):
- url = random.choice(self.toc_urls)
- r = self.client.get(url)
- pq = PyQuery(r.content)
- link_elements = pq("a.internal")
- self.urls_on_current_page = [
- l.attrib["href"] for l in link_elements
- ]
-
- @task(30)
- def load_sub_page(self):
- url = random.choice(self.urls_on_current_page)
- r = self.client.get(url)
-
-
-class AwesomeUser(HttpLocust):
- task_set = BrowseDocumentation
- host = "https://docs.locust.io/en/latest/"
-
- # we assume someone who is browsing the Locust docs,
- # generally has a quite long waiting time (between
- # 20 and 600 seconds), since there's a bunch of text
- # on each page
- min_wait = 20 * 1000
- max_wait = 600 * 1000
diff --git a/benchmarks/py-locust/files/extra-EXAMPLES-custom_wait_function.py b/benchmarks/py-locust/files/extra-EXAMPLES-custom_wait_function.py
deleted file mode 100644
index fad47c3174a6..000000000000
--- a/benchmarks/py-locust/files/extra-EXAMPLES-custom_wait_function.py
+++ /dev/null
@@ -1,51 +0,0 @@
-from locust import HttpLocust, TaskSet, task
-import random
-
-def index(l):
- l.client.get("/")
-
-def stats(l):
- l.client.get("/stats/requests")
-
-class UserTasks(TaskSet):
- # one can specify tasks like this
- tasks = [index, stats]
-
- # but it might be convenient to use the @task decorator
- @task
- def page404(self):
- self.client.get("/does_not_exist")
-
-class WebsiteUser(HttpLocust):
- """
- Locust user class that does requests to the locust web server running on localhost
- """
- host = "http://127.0.0.1:8089"
- # Most task inter-arrival times approximate to exponential distributions
- # We will model this wait time as exponentially distributed with a mean of 1 second
- wait_function = lambda self: random.expovariate(1)*1000 # *1000 to convert to milliseconds
- task_set = UserTasks
-
-def strictExp(min_wait,max_wait,mu=1):
- """
- Returns an exponentially distributed time strictly between two bounds.
- """
- while True:
- x = random.expovariate(mu)
- increment = (max_wait-min_wait)/(mu*6.0)
- result = min_wait + (x*increment)
- if result<max_wait:
- break
- return result
-
-class StrictWebsiteUser(HttpLocust):
- """
- Locust user class that makes exponential requests but strictly between two bounds.
- """
- host = "http://127.0.0.1:8089"
- wait_function = lambda self: strictExp(self.min_wait, self.max_wait)*1000
- task_set = UserTasks
-
-
-
-
diff --git a/benchmarks/py-locust/files/extra-EXAMPLES-custom_xmlrpc_client.py b/benchmarks/py-locust/files/extra-EXAMPLES-custom_xmlrpc_client.py
deleted file mode 100644
index f117acd7790a..000000000000
--- a/benchmarks/py-locust/files/extra-EXAMPLES-custom_xmlrpc_client.py
+++ /dev/null
@@ -1,54 +0,0 @@
-import time
-import xmlrpclib
-
-from locust import Locust, TaskSet, events, task
-
-
-class XmlRpcClient(xmlrpclib.ServerProxy):
- """
- Simple, sample XML RPC client implementation that wraps xmlrpclib.ServerProxy and
- fires locust events on request_success and request_failure, so that all requests
- gets tracked in locust's statistics.
- """
- def __getattr__(self, name):
- func = xmlrpclib.ServerProxy.__getattr__(self, name)
- def wrapper(*args, **kwargs):
- start_time = time.time()
- try:
- result = func(*args, **kwargs)
- except xmlrpclib.Fault as e:
- total_time = int((time.time() - start_time) * 1000)
- events.request_failure.fire(request_type="xmlrpc", name=name, response_time=total_time, exception=e)
- else:
- total_time = int((time.time() - start_time) * 1000)
- events.request_success.fire(request_type="xmlrpc", name=name, response_time=total_time, response_length=0)
- # In this example, I've hardcoded response_length=0. If we would want the response length to be
- # reported correctly in the statistics, we would probably need to hook in at a lower level
-
- return wrapper
-
-
-class XmlRpcLocust(Locust):
- """
- This is the abstract Locust class which should be subclassed. It provides an XML-RPC client
- that can be used to make XML-RPC requests that will be tracked in Locust's statistics.
- """
- def __init__(self, *args, **kwargs):
- super(XmlRpcLocust, self).__init__(*args, **kwargs)
- self.client = XmlRpcClient(self.host)
-
-
-class ApiUser(XmlRpcLocust):
-
- host = "http://127.0.0.1:8877/"
- min_wait = 100
- max_wait = 1000
-
- class task_set(TaskSet):
- @task(10)
- def get_time(self):
- self.client.get_time()
-
- @task(5)
- def get_random_number(self):
- self.client.get_random_number(0, 100)
diff --git a/benchmarks/py-locust/files/extra-EXAMPLES-dynamice_user_credentials.py b/benchmarks/py-locust/files/extra-EXAMPLES-dynamice_user_credentials.py
deleted file mode 100644
index 6f8f66baa5ca..000000000000
--- a/benchmarks/py-locust/files/extra-EXAMPLES-dynamice_user_credentials.py
+++ /dev/null
@@ -1,25 +0,0 @@
-# locustfile.py
-
-from locust import HttpLocust, TaskSet, task
-
-USER_CREDENTIALS = [
- ("user1", "password"),
- ("user2", "password"),
- ("user3", "password"),
-]
-
-class UserBehaviour(TaskSet):
- def on_start(self):
- if len(USER_CREDENTIALS) > 0:
- user, passw = USER_CREDENTIALS.pop()
- self.client.post("/login", {"username":user, "password":passw})
-
- @task
- def some_task(self):
- # user should be logged in here (unless the USER_CREDENTIALS ran out)
- self.client.get("/protected/resource")
-
-class User(HttpLocust):
- task_set = UserBehaviour
- min_wait = 5000
- max_wait = 60000
diff --git a/benchmarks/py-locust/files/extra-EXAMPLES-events.py b/benchmarks/py-locust/files/extra-EXAMPLES-events.py
deleted file mode 100644
index 7b1de7fafee2..000000000000
--- a/benchmarks/py-locust/files/extra-EXAMPLES-events.py
+++ /dev/null
@@ -1,69 +0,0 @@
-# -*- coding: utf-8 -*-
-
-"""
-This is an example of a locustfile that uses Locust's built in event hooks to
-track the sum of the content-length header in all successful HTTP responses
-"""
-
-from locust import HttpLocust, TaskSet, events, task, web
-
-
-class MyTaskSet(TaskSet):
- @task(2)
- def index(l):
- l.client.get("/")
-
- @task(1)
- def stats(l):
- l.client.get("/stats/requests")
-
-class WebsiteUser(HttpLocust):
- host = "http://127.0.0.1:8089"
- min_wait = 2000
- max_wait = 5000
- task_set = MyTaskSet
-
-
-"""
-We need somewhere to store the stats.
-
-On the master node stats will contain the aggregated sum of all content-lengths,
-while on the slave nodes this will be the sum of the content-lengths since the
-last stats report was sent to the master
-"""
-stats = {"content-length":0}
-
-def on_request_success(request_type, name, response_time, response_length):
- """
- Event handler that get triggered on every successful request
- """
- stats["content-length"] += response_length
-
-def on_report_to_master(client_id, data):
- """
- This event is triggered on the slave instances every time a stats report is
- to be sent to the locust master. It will allow us to add our extra content-length
- data to the dict that is being sent, and then we clear the local stats in the slave.
- """
- data["content-length"] = stats["content-length"]
- stats["content-length"] = 0
-
-def on_slave_report(client_id, data):
- """
- This event is triggered on the master instance when a new stats report arrives
- from a slave. Here we just add the content-length to the master's aggregated
- stats dict.
- """
- stats["content-length"] += data["content-length"]
-
-# Hook up the event listeners
-events.request_success += on_request_success
-events.report_to_master += on_report_to_master
-events.slave_report += on_slave_report
-
-@web.app.route("/content-length")
-def total_content_length():
- """
- Add a route to the Locust web app, where we can see the total content-length
- """
- return "Total content-length recieved: %i" % stats["content-length"]
diff --git a/benchmarks/py-locust/files/extra-EXAMPLES-multiple_hosts.py b/benchmarks/py-locust/files/extra-EXAMPLES-multiple_hosts.py
deleted file mode 100644
index b30585b37ce1..000000000000
--- a/benchmarks/py-locust/files/extra-EXAMPLES-multiple_hosts.py
+++ /dev/null
@@ -1,31 +0,0 @@
-import os
-
-from locust import HttpLocust, TaskSet, task
-from locust.clients import HttpSession
-
-class MultipleHostsLocust(HttpLocust):
- abstract = True
-
- def __init__(self, *args, **kwargs):
- super(MultipleHostsLocust, self).__init__(*args, **kwargs)
- self.api_client = HttpSession(base_url=os.environ["API_HOST"])
-
-
-class UserTasks(TaskSet):
- # but it might be convenient to use the @task decorator
- @task
- def index(self):
- self.locust.client.get("/")
-
- @task
- def index_other_host(self):
- self.locust.api_client.get("/stats/requests")
-
-class WebsiteUser(MultipleHostsLocust):
- """
- Locust user class that does requests to the locust web server running on localhost
- """
- host = "http://127.0.0.1:8089"
- min_wait = 2000
- max_wait = 5000
- task_set = UserTasks
diff --git a/benchmarks/py-locust/files/extra-EXAMPLES-semaphore_wait.py b/benchmarks/py-locust/files/extra-EXAMPLES-semaphore_wait.py
deleted file mode 100644
index 563b89c95d63..000000000000
--- a/benchmarks/py-locust/files/extra-EXAMPLES-semaphore_wait.py
+++ /dev/null
@@ -1,25 +0,0 @@
-from locust import HttpLocust, TaskSet, task, events
-
-from gevent.coros import Semaphore
-all_locusts_spawned = Semaphore()
-all_locusts_spawned.acquire()
-
-def on_hatch_complete(**kw):
- all_locusts_spawned.release()
-
-events.hatch_complete += on_hatch_complete
-
-class UserTasks(TaskSet):
- def on_start(self):
- all_locusts_spawned.wait()
- self.wait()
-
- @task
- def index(self):
- self.client.get("/")
-
-class WebsiteUser(HttpLocust):
- host = "http://127.0.0.1:8089"
- min_wait = 2000
- max_wait = 5000
- task_set = UserTasks
diff --git a/benchmarks/py-locust/files/patch-locust_main.py b/benchmarks/py-locust/files/patch-locust_main.py
new file mode 100644
index 000000000000..fc7fc9d27587
--- /dev/null
+++ b/benchmarks/py-locust/files/patch-locust_main.py
@@ -0,0 +1,11 @@
+--- locust/main.py.orig 2025-06-12 22:34:12 UTC
++++ locust/main.py
+@@ -454,7 +454,7 @@ See https://github.com/locustio/locust/wiki/Installati
+ sys.exit(1)
+ if options.web_host == "*":
+ # special check for "*" so that we're consistent with --master-bind-host
+- web_host = ""
++ web_host = "0.0.0.0"
+ else:
+ web_host = options.web_host
+ if web_host:
diff --git a/benchmarks/py-locust/pkg-plist b/benchmarks/py-locust/pkg-plist
index a8d3b5f7e5f4..9631a8e160c5 100644
--- a/benchmarks/py-locust/pkg-plist
+++ b/benchmarks/py-locust/pkg-plist
@@ -1,9 +1,173 @@
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/extra-EXAMPLES-basic.py
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/extra-EXAMPLES-browse_docs_sequence_test.py
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/extra-EXAMPLES-browse_docs_test.py
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/extra-EXAMPLES-custom_wait_function.py
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/extra-EXAMPLES-custom_xmlrpc_client.py
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/extra-EXAMPLES-dynamice_user_credentials.py
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/extra-EXAMPLES-events.py
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/extra-EXAMPLES-multiple_hosts.py
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/extra-EXAMPLES-semaphore_wait.py
+bin/locust
+%%PYTHON_SITELIBDIR%%/locust-2.37.10.dist-info/METADATA
+%%PYTHON_SITELIBDIR%%/locust-2.37.10.dist-info/RECORD
+%%PYTHON_SITELIBDIR%%/locust-2.37.10.dist-info/WHEEL
+%%PYTHON_SITELIBDIR%%/locust-2.37.10.dist-info/entry_points.txt
+%%PYTHON_SITELIBDIR%%/locust-2.37.10.dist-info/licenses/LICENSE
+%%PYTHON_SITELIBDIR%%/locust/__init__.py
+%%PYTHON_SITELIBDIR%%/locust/__main__.py
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/__init__%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/__main__%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/__main__%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/_version%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/_version%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/argument_parser%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/argument_parser%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/clients%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/clients%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/debug%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/debug%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/dispatch%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/dispatch%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/env%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/env%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/event%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/event%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/exception%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/exception%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/html%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/html%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/input_events%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/input_events%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/log%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/log%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/main%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/main%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/runners%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/runners%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/shape%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/shape%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/stats%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/stats%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/web%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/__pycache__/web%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/_version.py
+%%PYTHON_SITELIBDIR%%/locust/argument_parser.py
+%%PYTHON_SITELIBDIR%%/locust/clients.py
+%%PYTHON_SITELIBDIR%%/locust/contrib/__init__.py
+%%PYTHON_SITELIBDIR%%/locust/contrib/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/contrib/__pycache__/__init__%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/contrib/__pycache__/fasthttp%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/contrib/__pycache__/fasthttp%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/contrib/__pycache__/mongodb%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/contrib/__pycache__/mongodb%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/contrib/__pycache__/oai%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/contrib/__pycache__/oai%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/contrib/__pycache__/postgres%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/contrib/__pycache__/postgres%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/contrib/fasthttp.py
+%%PYTHON_SITELIBDIR%%/locust/contrib/mongodb.py
+%%PYTHON_SITELIBDIR%%/locust/contrib/oai.py
+%%PYTHON_SITELIBDIR%%/locust/contrib/postgres.py
+%%PYTHON_SITELIBDIR%%/locust/debug.py
+%%PYTHON_SITELIBDIR%%/locust/dispatch.py
+%%PYTHON_SITELIBDIR%%/locust/env.py
+%%PYTHON_SITELIBDIR%%/locust/event.py
+%%PYTHON_SITELIBDIR%%/locust/exception.py
+%%PYTHON_SITELIBDIR%%/locust/html.py
+%%PYTHON_SITELIBDIR%%/locust/input_events.py
+%%PYTHON_SITELIBDIR%%/locust/log.py
+%%PYTHON_SITELIBDIR%%/locust/main.py
+%%PYTHON_SITELIBDIR%%/locust/py.typed
+%%PYTHON_SITELIBDIR%%/locust/rpc/__init__.py
+%%PYTHON_SITELIBDIR%%/locust/rpc/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/rpc/__pycache__/__init__%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/rpc/__pycache__/protocol%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/rpc/__pycache__/protocol%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/rpc/__pycache__/zmqrpc%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/rpc/__pycache__/zmqrpc%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/rpc/protocol.py
+%%PYTHON_SITELIBDIR%%/locust/rpc/zmqrpc.py
+%%PYTHON_SITELIBDIR%%/locust/runners.py
+%%PYTHON_SITELIBDIR%%/locust/shape.py
+%%PYTHON_SITELIBDIR%%/locust/stats.py
+%%PYTHON_SITELIBDIR%%/locust/user/__init__.py
+%%PYTHON_SITELIBDIR%%/locust/user/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/user/__pycache__/__init__%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/user/__pycache__/inspectuser%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/user/__pycache__/inspectuser%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/user/__pycache__/sequential_taskset%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/user/__pycache__/sequential_taskset%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/user/__pycache__/task%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/user/__pycache__/task%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/user/__pycache__/users%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/user/__pycache__/users%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/user/__pycache__/wait_time%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/user/__pycache__/wait_time%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/user/inspectuser.py
+%%PYTHON_SITELIBDIR%%/locust/user/sequential_taskset.py
+%%PYTHON_SITELIBDIR%%/locust/user/task.py
+%%PYTHON_SITELIBDIR%%/locust/user/users.py
+%%PYTHON_SITELIBDIR%%/locust/user/wait_time.py
+%%PYTHON_SITELIBDIR%%/locust/util/__init__.py
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/__init__%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/cache%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/cache%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/date%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/date%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/deprecation%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/deprecation%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/directory%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/directory%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/exception_handler%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/exception_handler%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/load_locustfile%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/load_locustfile%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/rounding%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/rounding%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/timespan%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/timespan%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/url%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/__pycache__/url%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/locust/util/cache.py
+%%PYTHON_SITELIBDIR%%/locust/util/date.py
+%%PYTHON_SITELIBDIR%%/locust/util/deprecation.py
+%%PYTHON_SITELIBDIR%%/locust/util/directory.py
+%%PYTHON_SITELIBDIR%%/locust/util/exception_handler.py
+%%PYTHON_SITELIBDIR%%/locust/util/load_locustfile.py
+%%PYTHON_SITELIBDIR%%/locust/util/rounding.py
+%%PYTHON_SITELIBDIR%%/locust/util/timespan.py
+%%PYTHON_SITELIBDIR%%/locust/util/url.py
+%%PYTHON_SITELIBDIR%%/locust/web.py
+%%PYTHON_SITELIBDIR%%/locust/webui/dist/assets/favicon-dark.png
+%%PYTHON_SITELIBDIR%%/locust/webui/dist/assets/favicon-light.png
+%%PYTHON_SITELIBDIR%%/locust/webui/dist/assets/graphs-dark.png
+%%PYTHON_SITELIBDIR%%/locust/webui/dist/assets/graphs-light.png
+%%PYTHON_SITELIBDIR%%/locust/webui/dist/assets/index-4Ae7-bG8.js
+%%PYTHON_SITELIBDIR%%/locust/webui/dist/assets/testruns-dark.png
+%%PYTHON_SITELIBDIR%%/locust/webui/dist/assets/testruns-light.png
+%%PYTHON_SITELIBDIR%%/locust/webui/dist/auth.html
+%%PYTHON_SITELIBDIR%%/locust/webui/dist/index.html
+%%PYTHON_SITELIBDIR%%/locust/webui/dist/report.html
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/add_command_line_argument.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/basic.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/bottlenecked_server.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/browse_docs_sequence_test.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/browse_docs_test.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/csrf_form_authentication.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/custom_messages.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/custom_wait_function.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/debugging.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/debugging_advanced.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/dynamic_user_credentials.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/events.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/extend_web_ui.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/fast_http_locust.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/locustfile.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/manual_stats_reporting.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/multiple_hosts.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/nested_inline_tasksets.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/open_closed_workload.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/openai_ex.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/response_validations.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/rest.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/semaphore_wait.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/stop_on_threshold.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/test_data_management.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/testdata_from_csv.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/use_as_lib.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/web_ui_cache_stats.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/worker_index.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/x-forwarded-for.py
diff --git a/benchmarks/rubygem-benchmark/Makefile b/benchmarks/rubygem-benchmark/Makefile
index 21d374e92edb..11ed81fd801b 100644
--- a/benchmarks/rubygem-benchmark/Makefile
+++ b/benchmarks/rubygem-benchmark/Makefile
@@ -1,5 +1,5 @@
PORTNAME= benchmark
-PORTVERSION= 0.4.0
+PORTVERSION= 0.4.1
CATEGORIES= benchmarks rubygems
MASTER_SITES= RG
diff --git a/benchmarks/rubygem-benchmark/distinfo b/benchmarks/rubygem-benchmark/distinfo
index d40b5a05d665..7ae38c957bf1 100644
--- a/benchmarks/rubygem-benchmark/distinfo
+++ b/benchmarks/rubygem-benchmark/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1731679356
-SHA256 (rubygem/benchmark-0.4.0.gem) = 0f12f8c495545e3710c3e4f0480f63f06b4c842cc94cec7f33a956f5180e874a
-SIZE (rubygem/benchmark-0.4.0.gem) = 14336
+TIMESTAMP = 1748831264
+SHA256 (rubygem/benchmark-0.4.1.gem) = d4ef40037bba27f03b28013e219b950b82bace296549ec15a78016552f8d2cce
+SIZE (rubygem/benchmark-0.4.1.gem) = 14336
diff --git a/benchmarks/uica/Makefile b/benchmarks/uica/Makefile
index 653cf59a69dd..2b4747bbe1d4 100644
--- a/benchmarks/uica/Makefile
+++ b/benchmarks/uica/Makefile
@@ -55,7 +55,7 @@ do-build:
do-install:
${MKDIR} ${STAGEDIR}${DATADIR} ${STAGEDIR}${PYTHON_LIBDIR}/lib-dynload/
${INSTALL_DATA} ${WRKSRC}/traceTemplate.html ${STAGEDIR}${DATADIR}/
- ${INSTALL_LIB} ${WRKSRC}/xed${PYTHON_EXT_SUFFIX}.so ${STAGEDIR}${PYTHON_LIBDIR}/lib-dynload/
+ ${INSTALL_LIB} ${WRKSRC}/xed${PYTHON_TAG}.so ${STAGEDIR}${PYTHON_LIBDIR}/lib-dynload/
(cd ${WRKSRC} && ${COPYTREE_SHARE} '__pycache__ instrData microArchConfigs.py x64_lib.py' ${STAGEDIR}${PYTHON_LIBDIR})
${INSTALL_SCRIPT} ${WRKSRC}/uiCA.py ${STAGEDIR}${PREFIX}/bin/uiCA
diff --git a/benchmarks/uica/pkg-plist b/benchmarks/uica/pkg-plist
index 5c99edec6e93..ae2a8b3ec8e1 100644
--- a/benchmarks/uica/pkg-plist
+++ b/benchmarks/uica/pkg-plist
@@ -1,7 +1,7 @@
bin/uiCA
-%%PYTHON_LIBDIR%%/__pycache__/microArchConfigs%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/__pycache__/uiCA%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/__pycache__/x64_lib%%PYTHON_EXT_SUFFIX%%.pyc
+%%PYTHON_LIBDIR%%/__pycache__/microArchConfigs%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/__pycache__/uiCA%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/__pycache__/x64_lib%%PYTHON_TAG%%.pyc
%%PYTHON_LIBDIR%%/instrData/BDW_data.py
%%PYTHON_LIBDIR%%/instrData/CFL_data.py
%%PYTHON_LIBDIR%%/instrData/CLX_data.py
@@ -15,22 +15,22 @@ bin/uiCA
%%PYTHON_LIBDIR%%/instrData/SNB_data.py
%%PYTHON_LIBDIR%%/instrData/TGL_data.py
%%PYTHON_LIBDIR%%/instrData/__init__.py
-%%PYTHON_LIBDIR%%/instrData/__pycache__/BDW_data%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/instrData/__pycache__/CFL_data%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/instrData/__pycache__/CLX_data%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/instrData/__pycache__/HSW_data%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/instrData/__pycache__/ICL_data%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/instrData/__pycache__/IVB_data%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/instrData/__pycache__/KBL_data%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/instrData/__pycache__/RKL_data%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/instrData/__pycache__/SKL_data%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/instrData/__pycache__/SKX_data%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/instrData/__pycache__/SNB_data%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/instrData/__pycache__/TGL_data%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/instrData/__pycache__/__init__%%PYTHON_EXT_SUFFIX%%.pyc
-%%PYTHON_LIBDIR%%/instrData/__pycache__/uArchInfo%%PYTHON_EXT_SUFFIX%%.pyc
+%%PYTHON_LIBDIR%%/instrData/__pycache__/BDW_data%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/instrData/__pycache__/CFL_data%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/instrData/__pycache__/CLX_data%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/instrData/__pycache__/HSW_data%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/instrData/__pycache__/ICL_data%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/instrData/__pycache__/IVB_data%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/instrData/__pycache__/KBL_data%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/instrData/__pycache__/RKL_data%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/instrData/__pycache__/SKL_data%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/instrData/__pycache__/SKX_data%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/instrData/__pycache__/SNB_data%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/instrData/__pycache__/TGL_data%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/instrData/__pycache__/__init__%%PYTHON_TAG%%.pyc
+%%PYTHON_LIBDIR%%/instrData/__pycache__/uArchInfo%%PYTHON_TAG%%.pyc
%%PYTHON_LIBDIR%%/instrData/uArchInfo.py
-%%PYTHON_LIBDIR%%/lib-dynload/xed%%PYTHON_EXT_SUFFIX%%.so
+%%PYTHON_LIBDIR%%/lib-dynload/xed%%PYTHON_TAG%%.so
%%PYTHON_LIBDIR%%/microArchConfigs.py
%%PYTHON_LIBDIR%%/x64_lib.py
%%DATADIR%%/traceTemplate.html
diff --git a/benchmarks/vegeta/Makefile b/benchmarks/vegeta/Makefile
index ea8f6834ad33..de9e1cfef7ae 100644
--- a/benchmarks/vegeta/Makefile
+++ b/benchmarks/vegeta/Makefile
@@ -1,7 +1,7 @@
PORTNAME= vegeta
DISTVERSIONPREFIX= v
DISTVERSION= 12.11.0
-PORTREVISION= 11
+PORTREVISION= 13
CATEGORIES= benchmarks www
MAINTAINER= egypcio@FreeBSD.org
diff --git a/benchmarks/vkmark/Makefile b/benchmarks/vkmark/Makefile
index e71573cb326d..d380c1ae929a 100644
--- a/benchmarks/vkmark/Makefile
+++ b/benchmarks/vkmark/Makefile
@@ -1,5 +1,6 @@
PORTNAME= vkmark
DISTVERSION= 2025.01
+PORTREVISION= 2
CATEGORIES= benchmarks
MAINTAINER= jbeich@FreeBSD.org
diff --git a/benchmarks/vkpeak/Makefile b/benchmarks/vkpeak/Makefile
index e1c1511f7bcb..c663fcb60d2f 100644
--- a/benchmarks/vkpeak/Makefile
+++ b/benchmarks/vkpeak/Makefile
@@ -1,5 +1,5 @@
PORTNAME= vkpeak
-DISTVERSION= 20240505
+DISTVERSION= 20250531
CATEGORIES= benchmarks
MAINTAINER= jbeich@FreeBSD.org
@@ -10,13 +10,13 @@ LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= vulkan-headers>0:graphics/vulkan-headers
-LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader
+RUN_DEPENDS= ${LOCALBASE}/lib/libvulkan.so:graphics/vulkan-loader
USES= cmake compiler:c++11-lib
USE_GITHUB= yes
GH_ACCOUNT= nihui
-GH_TUPLE= KhronosGroup:glslang:12.3.1-11-g4420f9b3:nglslang/ncnn/glslang \
- Tencent:ncnn:20240410-9-gb8fefb97:ncnn/ncnn
+GH_TUPLE= KhronosGroup:glslang:15.3.0-5-gf3b687b3:nglslang/ncnn/glslang \
+ Tencent:ncnn:20250503-33-gebc041cc:ncnn/ncnn
PLIST_FILES= bin/${PORTNAME}
do-install:
diff --git a/benchmarks/vkpeak/distinfo b/benchmarks/vkpeak/distinfo
index c8f7e33396c2..ec15a2508749 100644
--- a/benchmarks/vkpeak/distinfo
+++ b/benchmarks/vkpeak/distinfo
@@ -1,7 +1,7 @@
-TIMESTAMP = 1714917565
-SHA256 (nihui-vkpeak-20240505_GH0.tar.gz) = dd052f2ca7a74d384e38d3d61894a5942af113a8ca1aead1e92e5a4d4f9875c9
-SIZE (nihui-vkpeak-20240505_GH0.tar.gz) = 7866
-SHA256 (KhronosGroup-glslang-12.3.1-11-g4420f9b3_GH0.tar.gz) = 097d4c94dcd5727a037d74764c7e681642a81ff74bef88f5ceb99cb9a360ac81
-SIZE (KhronosGroup-glslang-12.3.1-11-g4420f9b3_GH0.tar.gz) = 3732506
-SHA256 (Tencent-ncnn-20240410-9-gb8fefb97_GH0.tar.gz) = 5ca8e0b3be81fbdbd1d0c42eb569307e29402d2198bc2175f3ede7880e71f04a
-SIZE (Tencent-ncnn-20240410-9-gb8fefb97_GH0.tar.gz) = 12840711
+TIMESTAMP = 1748701328
+SHA256 (nihui-vkpeak-20250531_GH0.tar.gz) = e3d0211b052171017d415b38c9451bdaf58978032ccd9b137ce5a9acdfefe662
+SIZE (nihui-vkpeak-20250531_GH0.tar.gz) = 10218
+SHA256 (KhronosGroup-glslang-15.3.0-5-gf3b687b3_GH0.tar.gz) = b0c099d376ba09773f0464f584ce12f1fc59d30348622b718b6848d8b12adbfb
+SIZE (KhronosGroup-glslang-15.3.0-5-gf3b687b3_GH0.tar.gz) = 4171763
+SHA256 (Tencent-ncnn-20250503-33-gebc041cc_GH0.tar.gz) = 8c700d63b42aaae49e9fd34aa8ab142038e20d06f03a6b476d6f0953540b72e8
+SIZE (Tencent-ncnn-20250503-33-gebc041cc_GH0.tar.gz) = 13305119