From 5b02c2111dbd95d7d9f243d3a26f8df442d8415f Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Thu, 15 Oct 2026 11:02:13 +0000 Subject: [PATCH 1/2] apache-beam: add 2.61.0 for apache-flink's apache-beam<=2.61.0 pin apache-flink 2.3.0's .pyx/.pxd files cimport compiled Beam internals within apache-beam>=2.54.0,<=2.61.0; our registry only carried 2.75.0-2.77.0 (outside that window). 2.61.0's build-system.requires pins grpcio-tools==1.62.1, the same branch the existing before-build comment already documents, so no workflow change is needed there. The matrix drops cp313/cp314 since 2.61.0 predates cp313 and upstream itself never shipped past cp312 for it. --- .github/workflows/build-apache-beam.yml | 8 ++++++++ docs/packages/apache-beam.yaml | 1 + 2 files changed, 9 insertions(+) diff --git a/.github/workflows/build-apache-beam.yml b/.github/workflows/build-apache-beam.yml index 79a7183315a4..9eec0bc936c0 100644 --- a/.github/workflows/build-apache-beam.yml +++ b/.github/workflows/build-apache-beam.yml @@ -101,6 +101,14 @@ jobs: # cp314t dropped: upstream's own build_wheels.yml matrix never builds # it (no free-threading support declared for Beam's Cython extensions). python: ["cp312", "cp313", "cp314"] + exclude: + # 2.61.0 is the newest release still inside apache-flink's declared + # apache-beam<=2.61.0 window; it predates cp313 (and upstream itself + # never shipped a wheel past cp312 for it). + - version: "2.61.0" + python: cp313 + - version: "2.61.0" + python: cp314 env: APACHE_BEAM_VERSION: ${{ matrix.version }} diff --git a/docs/packages/apache-beam.yaml b/docs/packages/apache-beam.yaml index 36e43994fb7f..b58fb9659e65 100644 --- a/docs/packages/apache-beam.yaml +++ b/docs/packages/apache-beam.yaml @@ -2,6 +2,7 @@ package-name: apache-beam source-code: https://github.com/apache/beam license: Apache License, Version 2.0 versions: +- version: 2.61.0 - version: 2.75.0 tag: apache-beam-v2.75.0-20260911103533 files: From b9c1b101cfd91ac64d05a38ec0b7955f193adb8d Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Thu, 15 Oct 2026 11:11:05 +0000 Subject: [PATCH 2/2] apache-beam: pin setuptools<82 for the 2.61.0 sdist build 2.61.0's setup.py does a module-level `import pkg_resources`, which today's latest setuptools no longer ships - `python -m build --sdist` failed with ModuleNotFoundError before even getting to the cythonize step. flink-python's own build-system.requires caps setuptools the same way for the same reason. --- .github/workflows/build-apache-beam.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.github/workflows/build-apache-beam.yml b/.github/workflows/build-apache-beam.yml index 9eec0bc936c0..9fa54c89bb42 100644 --- a/.github/workflows/build-apache-beam.yml +++ b/.github/workflows/build-apache-beam.yml @@ -76,6 +76,16 @@ jobs: # sdist on PyPI ships without them for the same reason. cp ../../LICENSE ../../NOTICE ../../LICENSE.python . + # setup.py's own module-level `import pkg_resources` (2.61.0's era) + # breaks under today's latest setuptools, which no longer ships it; + # flink's own build-system.requires caps the same way for the same + # reason. PIP_BUILD_CONSTRAINT covers the isolated build env `build` + # creates for the sdist hook; PIP_CONSTRAINT is the belt-and-suspenders + # match for anything installed outside it. + echo "setuptools<82" > /tmp/build-constraint.txt + export PIP_CONSTRAINT=/tmp/build-constraint.txt + export PIP_BUILD_CONSTRAINT=/tmp/build-constraint.txt + pip install -U build python -m build --sdist