Python 2 support on Google Cloud (original) (raw)

The Python community announced that it willsunset Python 2 on January 1, 2020, and are encouraging all developers to upgrade to Python 3 as soon as they can. In recognition that customers may need more time to migrate from Python 2 to Python 3, Google Cloud customers will be able to run Python 2 apps and use existing Python 2 client librariesafter January 1, 2020.

Managed compute services, such as App Engine, will continue to provide a Python 2 runtime beyond January 1, 2020. Python 2 client libraries will continue to be available for download, but future major releases will only target Python 3.

This page provides a summary of Python 2 and 3 support across Google Cloud and will provide resources to help you migrate to Python 3. We will keep this page updated with the latest resources and information.

Python 2 support status

Google Cloud Python Client Libraries

New major versions of Python client librariesreleased after January 1, 2020 will not support Python 2.7. Previous major versions will remain available for download, allowing access to existing service endpoints, and will support users currently developing for Python 2.7.

If a vulnerability is detected in an old library version or in a library dependency of an old library version there is no plan to release a patch.

App Engine Python 2.7 Runtime

We are committed to providing long term support for the App Engine Python 2.7 runtime, continuing our more than decade-long history of supporting your apps as you move to the future at your own pace.

To support the Python 2.7 runtime for the long term, we will make the following changes over time:

For more information on the long term support of the App Engine Python 2.7 runtime, see theApp Engine long term support plan) More migration information is available formigrating to the Python 3 standard runtime.

Google Cloud CLI

Google Cloud CLI version 274.0.0 introduces support for Python 3. Older versions of the gcloud CLI will remain available for download, but we recommend using version 274.0.0 or newer and migrating to Python 3 as soon as possible.

For instructions on how to configure the gcloud CLI to use Python 3, seeUsing Python 3.

Some Python tools other than the gcloud CLI that are shipped in the Google Cloud CLI still require a Python 2.7 interpreter. For details, run:gcloud topic startup.

Deployment Manager templates

We expect that most Deployment Manager templates will continue to work with Python 3. If you use additional Python code with your templates, such as helper scripts or template modules, make sure that they are compatible with Python 3.

For information on what to expect during the transition from Python 2.7 to 3.x, see the Deployment Manager documentation.

Dataflow

As of October 7, 2020, Dataflow no longer supports Python 2 pipelines. Due to both the industry shift and the discontinuation of Python 2 support in Apache Beam, Dataflow cannot guarantee long-term functional support or maintenance of the Python 2 offering.

You can run existing Python batch and streaming pipelines on Python 3 using the most recent Apache Beam SDK. We recommend checking that your pipeline code is compatible with Python 3 by following thePorting Python 2 Code to Python 3 documentation.

For known issues related to the Apache Beam Python 3 migration, refer to the FAQ on the BEAM-1251tracker. For more information on the support status of Apache Beam 2.x SDKs, see theSDK version support status page.