O Python 3.10 atingiu o fim de vida upstream em 1 de outubro de 2026. A última versão de segurança é a 3.10.22. Não há mais atualizações upstream. O suporte do fabricante deve ser verificado separadamente. A compatibilidade específica da aplicação deve ser testada individualmente.
Criar um inventário do projeto
Antes de uma migração, é importante criar um inventário completo do projeto. Isso inclui todos os pacotes utilizados, dependências e a versão atual do interpretador Python. Esse inventário ajuda a identificar problemas de compatibilidade potenciais cedo e planear soluções.
Verificar compatibilidade do fabricante e dos pacotes
A compatibilidade deve ser verificada de forma sistemática, considerando não apenas a versão do Python, mas também todas as bibliotecas dependentes e suas versões. Interfaces externas, como drivers de base de dados ou APIs, devem ser verificadas quanto ao suporte para a versão-alvo. Para pacotes binários, a compatibilidade com a plataforma e a arquitetura é decisiva. O planeamento deve definir responsabilidades claras e janelas de manutenção para responder rapidamente a problemas. É importante dividir os passos da migração em fases e verificar os efeitos em toda a aplicação em cada etapa. Uma migração abrangente sem análise prévia pode levar a erros inesperados.
As especificações do fabricante sobre versões suportadas são centrais nesse processo.
Backup da aplicação, dados e configurações
Antes de iniciar a migração, crie cópias de segurança completas da aplicação, dos dados e da configuração. O ambiente antigo deve permanecer inalterado para que possa ser acessado em caso de problemas.
Projeto de teste e verificação do interpretador
Os comandos mostrados são exemplos para Unix; todos os comandos são executados no diretório raiz de um projeto de teste separado; os caminhos relativos se referem a isso. Antes do uso, verifique a versão real do python3. A versão-alvo deve já estar instalada, mantida e compatível com o projeto. Não haverá alteração de serviços em produção.
O projeto de teste serve para verificar isoladamente os passos da migração e não deve ser confundido com ambientes de produção. Antes de iniciar a migração, determine a versão atual do Python no local de implantação e compare-a com a versão-alvo. Todos os comandos no projeto de teste são exemplares e servem para demonstração; devem ser adaptados ao seu ambiente.
Antes da instalação, o interpretador python3 deve já estar instalado, mantido e compatível com o projeto. O ficheiro requirements-reviewed.txt é uma lista de pacotes preparada previamente e testada para a versão-alvo, não um ficheiro fornecido com o sistema. O Python do sistema operativo não deve ser substituído. O caminho global PATH não deve ser alterado. Atualizações de pacotes genéricas não são recomendadas. Os seguintes comandos devem ser usados no projeto de teste:
python3 --version
python3 -m venv .venv-next
.venv-next/bin/python -m pip install -r requirements-reviewed.txt
.venv-next/bin/python -m pip check
Instalação e verificação das dependências
pip check verifica apenas a compatibilidade das dependências declaradas. Não são realizados testes de aplicação nem auditorias de segurança. Um venv isola pacotes, mas não é uma sandbox de segurança e não resolve o fim do suporte do interpretador. Ambientes devem ser criados novamente, não copiados ou movidos. A ativação não é necessária se o caminho do interpretador for especificado explicitamente.
Testes e planeamento de rollback
A aceitação da migração só deve ocorrer se todos os testes planeados forem bem-sucedidos e não tiverem ocorrido erros críticos. Dados sensíveis devem ser tratados conforme as especificações do projeto para evitar violações de normas de proteção de dados. Antes da migração, documente os resultados esperados e compare-os com os resultados reais. Diferenças devem ser documentadas detalhadamente e não devem ser ignoradas simplesmente.
Após a instalação e verificação das dependências, a aplicação, os dados de exemplo e as integrações externas devem ser testados. Os critérios para o teste devem ser documentados. Ambientes existentes, incluindo a aplicação e a cópia de segurança dos dados, devem ser mantidos até a aceitação. Apenas depois disso pode ser planeada uma transição controlada. Um rollback para o ambiente antigo é possível apenas como solução temporária e não restabelece o suporte completo.
Para mais informações, consulte a documentação oficial: PEP 619, Documentação do venv, pip check.
