diff --git a/CHANGES.md b/CHANGES.md index b936ba6dda30..d58ceffeb411 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -82,6 +82,8 @@ ## Deprecations * X behavior is deprecated and will be removed in X versions ([#X](https://github.com/apache/beam/issues/X)). +* Python 3.8 is reaching EOL and support is being removed in Beam 2.61.0. The 2.60.0 release will warn users +when running on 3.8. ([#31192](https://github.com/apache/beam/issues/31192)) ## Bugfixes diff --git a/sdks/python/apache_beam/__init__.py b/sdks/python/apache_beam/__init__.py index 27c2b293fbd0..6e08083bc0de 100644 --- a/sdks/python/apache_beam/__init__.py +++ b/sdks/python/apache_beam/__init__.py @@ -75,6 +75,12 @@ 'This version of Apache Beam has not been sufficiently tested on ' 'Python %s.%s. You may encounter bugs or missing features.' % (sys.version_info.major, sys.version_info.minor)) + elif sys.version_info.minor == 8: + warnings.warn( + 'Python 3.8 reaches EOL in October 2024 and support will ' + 'be removed from Apache Beam in version 2.61.0. See ' + 'https://github.com/apache/beam/issues/31192 for more ' + 'information.') pass else: raise RuntimeError( diff --git a/sdks/python/setup.py b/sdks/python/setup.py index 216694168902..ddd7bfea52c8 100644 --- a/sdks/python/setup.py +++ b/sdks/python/setup.py @@ -278,6 +278,11 @@ def get_portability_package_data(): 'This version of Apache Beam has not been sufficiently tested on ' 'Python %s.%s. You may encounter bugs or missing features.' % (sys.version_info.major, sys.version_info.minor)) +elif sys.version_info.major == 3 and sys.version_info.minor == 8: + warnings.warn('Python 3.8 reaches EOL in October 2024 and support will ' + 'be removed from Apache Beam in version 2.61.0. See ' + 'https://github.com/apache/beam/issues/31192 for more ' + 'information.') if __name__ == '__main__': # In order to find the tree of proto packages, the directory