Suporte para Python 2 no Google Cloud

A comunidade do Python anunciou que desativará o Python 2 em 1º de janeiro de 2020 e incentiva todos os desenvolvedores a fazer upgrade para o Python 3 assim que possível. Em reconhecimento, os clientes podem precisar de mais tempo para migrar do Python 2 para o Python 3. Os clientes do Google Cloud podem executar aplicativos do Python 2 e usar o Python 2 atual bibliotecas de cliente após 1º de janeiro de 2020.

Os serviços de computação gerenciados, como o App Engine, continuarão fornecendo um ambiente de execução do Python 2 além de 1o de janeiro de 2020. As bibliotecas de cliente do Python 2 continuarão disponíveis para download, mas as versões principais futuras segmentarão apenas o Python 3.

Esta página fornece um resumo do suporte ao Python 2 e 3 no Google Cloud e oferece recursos que ajudarão você a migrar para o Python 3. Manteremos esta página atualizada com os recursos e informações mais recentes.

Status do suporte para Python 2

Bibliotecas de cliente do Python para Google Cloud

As novas versões principais das bibliotecas de cliente do Python lançadas após 1º de janeiro de 2020 não serão compatíveis com o Python 2.7. As versões principais anteriores continuarão disponíveis para download, permitindo o acesso a endpoints do serviço, e serão compatíveis com os usuários que estiverem desenvolvendo para o Python 2.7 no momento.

Se uma vulnerabilidade for detectada em uma versão de biblioteca antiga ou em uma dependência de biblioteca de uma versão antiga da biblioteca, não haverá planos para lançar um patch.

Ambiente de execução do Python 2.7 para App Engine

Temos o compromisso de oferecer suporte de longo prazo para o ambiente de execução do Python 2.7 para App Engine, continuando nosso histórico de mais de uma década de suporte aos seus aplicativos no futuro.

Para oferecer suporte ao ambiente de execução do Python 2.7 a longo prazo, faremos as seguintes alterações ao longo do tempo:

  • Retornar os ambientes de execução aos seus estados de código aberto e sem divisão o máximo possível. Tivemos que alterar e restringir fortemente alguns dos ambientes de execução para executar seus aplicativos com segurança em nossos data centers. Ao fazer alterações na forma como operamos os ambientes de execução em nossos data centers, podemos fornecer um ambiente seguro e escalonável para esses ambientes de execução a longo prazo.

  • Adicionar sistemas de compilação completos compatíveis com repositórios de pacotes, builds de componentes nativos e repositórios de recursos.

Para mais informações sobre o suporte de longo prazo do ambiente de execução do Python 2.7 do App Engine, consulte o plano de suporte de longo prazo do App Engine. Veja mais informações sobre migração para migração para o ambiente de execução padrão do Python 3.

Cloud SDK

O SDK do Cloud versão 274.0.0 apresenta compatibilidade com o Python 3. As versões mais antigas do SDK do Cloud permanecerão disponíveis para download, mas recomendamos o uso da versão 274.0.0 ou mais recente e a migração para o Python 3 assim que possível.

Para instruções sobre como configurar o SDK do Cloud para usar o Python 3, consulte Como usar o Python 3.

Algumas ferramentas do Python diferentes da ferramenta de linha de comando gcloud, enviadas no SDK do Cloud, exigem um interpretador do Python 2.7, para detalhes, execute: gcloud topic startup.

Modelos do Deployment Manager

Esperamos que a maioria dos modelos do Deployment Manager continue funcionando com o Python 3. Se você usar um código Python adicional com seus modelos, como scripts auxiliares ou módulos de modelo, verifique se eles são compatíveis com o Python 3.

Para informações sobre o que esperar durante a transição do Python 2.7 para 3.x, consulte a documentação do Deployment Manager.

Dataflow

A partir de 7 de outubro de 2020, o Dataflow não será mais compatível com os pipelines do Python 2. Devido à alteração da indústria e à descontinuidade do suporte ao Python 2 no Apache Beam, o Dataflow não pode garantir suporte funcional ou manutenção de longo prazo da oferta do Python 2.

É possível executar pipelines em lote e de streaming do Python no Python 3 usando o SDK do Apache Beam mais recente. Recomendamos verificar se o código do pipeline é compatível com o Python 3 seguindo a documentação de portabilidade de código do Python 2 para Python 3.

Para problemas conhecidos relacionados à migração do Python 3 do Apache Beam, consulte as perguntas frequentes no rastreador BEAM-1212 (em inglês). Para mais informações sobre o status de suporte dos SDKs do Apache Beam 2.x, consulte a página de status de suporte da versão do SDK.