Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 03 Aug 2026 00:12:28 +0000
From:      Yuri Victorovich <yuri@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-branches@FreeBSD.org
Subject:   git: f9412d94a0ba - 2026Q3 - misc/py-apache-beam: update 2.=?utf-8?Q?43.0 =E2=86=92?= 2.75.0
Message-ID:  <6a6fdcec.1a384.7d0a4b3@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch 2026Q3 has been updated by yuri:

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

commit f9412d94a0ba4b13e28a3af8203965a23b5c49cc
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2026-07-28 22:25:51 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2026-08-03 00:12:26 +0000

    misc/py-apache-beam: update 2.43.0 → 2.75.0
    
    (cherry picked from commit 48e8f730b61e1125e86d44a4edbe4d59cf2ebac3)
---
 misc/py-apache-beam/Makefile                   | 58 +++++++++++++-------------
 misc/py-apache-beam/distinfo                   |  6 +--
 misc/py-apache-beam/files/patch-pyproject.toml | 43 +++++++++++++++++++
 3 files changed, 75 insertions(+), 32 deletions(-)

diff --git a/misc/py-apache-beam/Makefile b/misc/py-apache-beam/Makefile
index bea9468f0cc2..6d670ca727ec 100644
--- a/misc/py-apache-beam/Makefile
+++ b/misc/py-apache-beam/Makefile
@@ -1,9 +1,9 @@
 PORTNAME=	apache-beam
-DISTVERSION=	2.43.0
-PORTREVISION=	5
+DISTVERSION=	2.75.0
 CATEGORIES=	misc
 MASTER_SITES=	PYPI
 PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+DISTNAME=	apache_beam-${DISTVERSION}
 
 MAINTAINER=	yuri@FreeBSD.org
 COMMENT=	Apache Beam SDK for Python
@@ -11,51 +11,51 @@ WWW=		https://beam.apache.org/
 
 LICENSE=	APACHE20
 
-DEPRECATED=	Depends on expired lang/cython0
-EXPIRATION_DATE=2026-09-15
-
-PY_DEPENDS=	${PYTHON_PKGNAMEPREFIX}cloudpickle>=2.2.0:devel/py-cloudpickle@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}crcmod>=1.7:devel/py-crcmod@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}python-dateutil>=2.8.0:devel/py-python-dateutil@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}dill>=0.3.1.1:devel/py-dill@${PY_FLAVOR} \
+PY_DEPENDS=	${PYTHON_PKGNAMEPREFIX}beartype>=0.21.0:devel/py-beartype@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}cryptography>=39.0.0:security/py-cryptography@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}fastavro>=0.23.6:textproc/py-fastavro@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}fasteners>=0.3:devel/py-fasteners@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}grpcio>=1.33.1>0:devel/py-grpcio@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}hdfs>=2.1.0:www/py-hdfs@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}grpcio>=1.33.1:devel/py-grpcio@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}httplib2>=0.8:www/py-httplib2@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}numpy>=1.16:math/py-numpy@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}orjson<4.0:devel/py-orjson@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}objsize>=0.5.2:devel/py-objsize@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}jsonpickle>=3.0.4:devel/py-jsonpickle@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}numpy>=1.14.3:math/py-numpy@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}objsize>=0.6.1:devel/py-objsize@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}packaging>=22.0:devel/py-packaging@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}proto-plus>=1.7.1:devel/py-proto-plus@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}protobuf>=3.12.2:devel/py-protobuf@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}pydot>=1.2.0:graphics/py-pydot@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}protobuf>=3.20.3:devel/py-protobuf@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pyarrow>=6.0.1:databases/py-pyarrow@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}pymongo>=3.8.0:databases/py-pymongo@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}python-dateutil>=2.8.0:devel/py-python-dateutil@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}pytz>=2018.3:devel/py-pytz@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}regex>=2020.6.8:textproc/py-regex@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}requests>=2.24.0:www/py-requests@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pyyaml>=3.12:devel/py-pyyaml@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}requests>=2.32.4:www/py-requests@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}sortedcontainers>=2.4.0:devel/py-sortedcontainers@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}typing-extensions>=3.7.0:devel/py-typing-extensions@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}zstandard>=0.18.0:archivers/py-zstandard@${PY_FLAVOR}
-BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}pip>0:devel/py-pip@${PY_FLAVOR} \
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}distlib>=0.4.2:devel/py-distlib@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}Jinja2>=2.7.1:devel/py-Jinja2@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}platformdirs>=3.5.1:devel/py-platformdirs@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}wheel>=0.36.0:devel/py-wheel@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}yapf>=0.43.0:textproc/py-yapf@${PY_FLAVOR} \
 		${PY_DEPENDS}
 RUN_DEPENDS=	${PY_DEPENDS}
 TEST_DEPENDS=	${PYTHON_PKGNAMEPREFIX}freezegun>=0.3.12:devel/py-freezegun@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}joblib>=0.3.12:devel/py-joblib@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}joblib>=1.0.1:devel/py-joblib@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}mock>=1.0.1:devel/py-mock@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}pandas>0:math/py-pandas@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}parameterized>=0.7.1:devel/py-parameterized@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}psycopg2>=2.8.5:databases/py-psycopg2@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}PyHamcrest>=1.9:textproc/py-pyhamcrest@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}pytest-timeout>=1.3.3:devel/py-pytest-timeout@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}pytest-xdist>=1.29.0:devel/py-pytest-xdist@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pydot>=1.2.0:graphics/py-pydot@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pyhamcrest>=1.9:textproc/py-pyhamcrest@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pytest-timeout>=2.1.0:devel/py-pytest-timeout@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pytest-xdist>=2.5.0:devel/py-pytest-xdist@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}requests-mock>=1.7:www/py-requests-mock@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}tenacity>=5.0.2:devel/py-tenacity@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}scikit-learn>=0.20.0:science/py-scikit-learn@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}sqlalchemy14>=1.3:databases/py-sqlalchemy14@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}pyyaml>=3.12:devel/py-pyyaml@${PY_FLAVOR}
-		# testcontainers[mysql]>=3.0.3 is also required
+		${PYTHON_PKGNAMEPREFIX}tenacity>=8.0.0:devel/py-tenacity@${PY_FLAVOR}
 
-USES=		python zip
-USE_PYTHON=	autoplist concurrent cryptography_test cython0 distutils pytest # 5 tests fail, depending on pyarrow, MySqlContainer, threadpoolctl
+USES=		python
+USE_PYTHON=	autoplist concurrent cryptography_test cython pep517 pytest
 
 post-install:
 	# strip binaries
diff --git a/misc/py-apache-beam/distinfo b/misc/py-apache-beam/distinfo
index c29c71b2e84a..6b4d4be1a9d8 100644
--- a/misc/py-apache-beam/distinfo
+++ b/misc/py-apache-beam/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1668902923
-SHA256 (apache-beam-2.43.0.zip) = f1d4d4495fb661d39a2eff7689c717008d0c708b3311931e829b1f445d602422
-SIZE (apache-beam-2.43.0.zip) = 2910305
+TIMESTAMP = 1785274453
+SHA256 (apache_beam-2.75.0.tar.gz) = e8d5964b5a0dd706f0e50ed1af971219390ed7477cf644268aed058cd7d1e820
+SIZE (apache_beam-2.75.0.tar.gz) = 3036710
diff --git a/misc/py-apache-beam/files/patch-pyproject.toml b/misc/py-apache-beam/files/patch-pyproject.toml
new file mode 100644
index 000000000000..2fbfdbb8cebe
--- /dev/null
+++ b/misc/py-apache-beam/files/patch-pyproject.toml
@@ -0,0 +1,43 @@
+--- Relax exact version requirements and comment out code generation tools
+--- in build-system dependencies.
+---
+--- 1. Comment out grpcio-tools and mypy-protobuf as these are only needed for
+---    generating protobuf code, which is already included in the distribution
+---    tarball. Including them would require protobuf>=7.35.1 which conflicts
+---    with the version available in ports (6.33.6).
+---
+--- 2. Relax exact version requirements (==) to allow using newer versions
+---    available in FreeBSD ports:
+---    - distlib 0.4.3 instead of exactly 0.4.2
+---    - yapf 0.43.0 or newer
+---
+--- These changes allow the package to build successfully with the dependency
+--- versions available in FreeBSD ports.
+
+--- pyproject.toml.orig	2026-07-28 21:58:05 UTC
++++ pyproject.toml
+@@ -24,11 +24,11 @@ requires = [
+     # Note: after upgrading to grpcio-tools, we must bump protobuf to >=5.0.
+     # Currently Blocked on old dependencies of Beam tft extra:
+     # https://github.com/apache/beam/issues/37854
+-    "grpcio-tools==1.62.1; python_version <= '3.12'",
+-    "grpcio-tools==1.71.0; python_version >= '3.13'",
+-    "mypy-protobuf==3.5.0",
++    # "grpcio-tools==1.62.1; python_version <= '3.12'"  # Not needed for building (proto files already generated),
++    # "grpcio-tools==1.71.0; python_version >= '3.13'"  # Not needed for building,
++    # "mypy-protobuf==3.5.0"  # Not needed for building,
+     # Avoid https://github.com/pypa/virtualenv/issues/2006
+-    "distlib==0.4.2",
++    "distlib>=0.4.2",
+     # Numpy headers
+     "numpy>=1.14.3,<2.5.0", # Update setup.py as well.
+     # having cython here will create wheels that are platform dependent.
+@@ -38,7 +38,7 @@ requires = [
+     'pyyaml>=3.12,<7.0.0',
+     # also update Jinja2 bounds in test-suites/xlang/build.gradle (look for xlangWrapperValidation task)
+     "jinja2>=2.7.1,<4.0.0",
+-    'yapf==0.43.0'
++    'yapf>=0.43.0'
+ ]
+ 
+ 


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6a6fdcec.1a384.7d0a4b3>