This is an automated email from the ASF dual-hosted git repository.
shunping pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git
The following commit(s) were added to refs/heads/master by this push:
new aec0392a343 Revert previous workarounds and upgrade TFX stack to
1.21.0 (#39164)
aec0392a343 is described below
commit aec0392a3433e52a1a5c20dafd87fe9156bb9fa7
Author: Shunping Huang <[email protected]>
AuthorDate: Tue Jun 30 18:09:45 2026 -0400
Revert previous workarounds and upgrade TFX stack to 1.21.0 (#39164)
---
.../beam_CloudML_Benchmarks_Dataflow.json | 2 +-
.../mltransform_one_hot_encoding_test.py | 2 --
.../testing/benchmarks/cloudml/constraints.txt | 42 ----------------------
.../testing/benchmarks/cloudml/requirements.txt | 21 +++++------
sdks/python/test-suites/dataflow/common.gradle | 4 +--
5 files changed, 11 insertions(+), 60 deletions(-)
diff --git a/.github/trigger_files/beam_CloudML_Benchmarks_Dataflow.json
b/.github/trigger_files/beam_CloudML_Benchmarks_Dataflow.json
index 5d04b2c0a8c..37dd25bf902 100644
--- a/.github/trigger_files/beam_CloudML_Benchmarks_Dataflow.json
+++ b/.github/trigger_files/beam_CloudML_Benchmarks_Dataflow.json
@@ -1,4 +1,4 @@
{
"comment": "Modify this file in a trivial way to cause this test suite to
run.",
- "modification": 5
+ "modification": 3
}
diff --git
a/sdks/python/apache_beam/examples/ml_transform/mltransform_one_hot_encoding_test.py
b/sdks/python/apache_beam/examples/ml_transform/mltransform_one_hot_encoding_test.py
index e072a367dc3..5ebf198c63b 100644
---
a/sdks/python/apache_beam/examples/ml_transform/mltransform_one_hot_encoding_test.py
+++
b/sdks/python/apache_beam/examples/ml_transform/mltransform_one_hot_encoding_test.py
@@ -104,7 +104,6 @@ class OneHotEncodingPipelineTest(unittest.TestCase):
self.assertEqual(parsed['category'], 'test')
self.assertEqual(parsed['value'], 123)
- @pytest.mark.uses_tft
def test_end_to_end_pipeline_local(self):
"""Integration test running the full pipeline locally."""
extra_opts = {
@@ -140,7 +139,6 @@ class OneHotEncodingPipelineTest(unittest.TestCase):
self.assertIn('color', record)
self.assertIn('size', record)
- @pytest.mark.uses_tft
def test_pipeline_with_missing_columns(self):
"""Test pipeline handles records with missing columns gracefully."""
# Create input with some missing columns
diff --git a/sdks/python/apache_beam/testing/benchmarks/cloudml/constraints.txt
b/sdks/python/apache_beam/testing/benchmarks/cloudml/constraints.txt
deleted file mode 100644
index 03d43524f4b..00000000000
--- a/sdks/python/apache_beam/testing/benchmarks/cloudml/constraints.txt
+++ /dev/null
@@ -1,42 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-# Constraints file to pin versions and avoid pip ResolutionTooDeep.
-# This file is used with: pip install -c constraints.txt -r requirements.txt
-
-# Core dependencies
-tfx_bsl==1.15.1
-tensorflow-transform==1.15.0
-
-# TensorFlow ecosystem
-tensorflow==2.15.1
-tensorflow-metadata==1.15.0
-tf-keras==2.15.1
-
-# NumPy and data handling
-numpy==1.26.4
-pyarrow==10.0.1
-
-# Google Cloud (pin to avoid transitive resolution)
-google-cloud-aiplatform==1.133.0
-google-api-core==2.19.1
-
-# Note: google-auth is NOT constrained - let pip resolve it to satisfy
-# apache-beam's google-genai requirement (>=2.48.1)
-
-# Note: tensorflow-serving-api is NOT constrained - let pip resolve it within
-# the range specified in requirements.txt (>=2.15,<2.16)
diff --git
a/sdks/python/apache_beam/testing/benchmarks/cloudml/requirements.txt
b/sdks/python/apache_beam/testing/benchmarks/cloudml/requirements.txt
index 5f754e27148..ee9b99c835f 100644
--- a/sdks/python/apache_beam/testing/benchmarks/cloudml/requirements.txt
+++ b/sdks/python/apache_beam/testing/benchmarks/cloudml/requirements.txt
@@ -15,15 +15,12 @@
# limitations under the License.
#
-# Core TFT dependencies with version bounds.
-# Note: To avoid pip ResolutionTooDeep errors, always install using the
constraints file:
-# pip install -c constraints.txt -r requirements.txt
-dill>=0.3,<0.5
-tfx_bsl>=1.15,<1.17
-tensorflow-transform>=1.15,<1.17
-tensorflow>=2.15,<2.16
-numpy>=1.22.0,<2.0
-tensorflow-metadata>=1.15,<1.16
-pyarrow>=10,<11
-tensorflow-serving-api>=2.15,<2.16
-tf-keras>=2.15,<2.16
+dill==0.4.1
+tfx_bsl==1.21.0
+tensorflow-transform==1.21.0
+tensorflow-metadata==1.21.0
+tensorflow
+numpy
+pyarrow
+tensorflow-serving-api
+tf-keras
diff --git a/sdks/python/test-suites/dataflow/common.gradle
b/sdks/python/test-suites/dataflow/common.gradle
index c450eb3612f..f9fd691517c 100644
--- a/sdks/python/test-suites/dataflow/common.gradle
+++ b/sdks/python/test-suites/dataflow/common.gradle
@@ -589,9 +589,7 @@ task installTFTRequirements {
exec {
workingDir
"$rootProject.projectDir/sdks/python/apache_beam/testing/benchmarks/cloudml/"
executable 'sh'
- // Use constraints file to pin versions while allowing pip to
- // resolve compatible versions within the specified ranges in
requirements.txt
- args '-c', ". ${envdir}/bin/activate && pip install -c constraints.txt
-r requirements.txt"
+ args '-c', ". ${envdir}/bin/activate && pip install -r requirements.txt"
}
}
}