A Python Software Foundation lançou o segundo release candidate (RC) do Python 3.9. Por isso, está alertando os usuários para ficarem atentos aos avisos à medida que diminui a compatibilidade com versões anteriores para Python 2.7 sem suporte. Então, veja o que há de novo na linguagem de programação Python 3.9 RC2 que, infelizmente, quebra mais de 150 pacotes do Fedora e, consequentemente, da Red Hat..
Os mantenedores do Python pararam de suportar o Python 2.7 em abril, cerca de cinco anos após o término do suporte – e 12 anos após o criador do Python, Guido van Rossum, anunciar o Python 3.
A versão final do Python 3.9 está programada para lançamento no início de outubro. Então, os mantenedores do Python acreditam que faz sentido remover as camadas de compatibilidade 2.7.
Quando o Python 2.7 ainda era compatível, muitas funções foram mantidas para compatibilidade com o Python 2.7. Com o fim do suporte do Python 2.7, essas camadas de compatibilidade com versões anteriores foram removidas ou serão removidas em breve, observa a Python Software Foundation.
Veja o que há de novo na linguagem de programação Python 3.9 RC2
Conforme explicado, embora a compatibilidade com versões anteriores do Python 2.7 estivesse disponível até agora, as camadas de compatibilidade têm emitido um “Aviso de depreciação” por vários anos.
Apesar da maioria das camadas de compatibilidade desaparecerem no Python 3.9, foi decidido fazer algumas exceções para alguns posteriores de compatibilidade 2.7 para dar suporte aos mantenedores de projetos Python, para que eles tenham tempo de remover o suporte do Python 2 e adicionar suporte ao Python 3.9.
Python 3.9 quebra 150 pacotes do Fedora
A mudança para manter algumas camadas de compatibilidade segue as preocupações levantadas pelo mantenedor do Python apoiado pelo RedHat, Victor Stinner, que mantém o Python upstream e o Python downstream para Red Hat Enterprise Linux (RHEL) e Fedora.
Stinner e seu colega engenheiro da RedHat, Miro Hronok, alertaram em janeiro que há mais de 150 pacotes do Fedora quebrados pelo Python 3.9 por causa de recursos de compatibilidade obsoletos do 2.7 que foram descartados. Espera- se que o Fedora 33 seja um grande lançamento e está programado para ser lançado em meados de outubro.
Miro e eu consideramos que o Python 3.9 está pressionando demais os mantenedores de projetos para abandonar o Python 2.7 agora (é necessário atualizar o CI, a documentação, avisar os usuários etc.) ou introduzir uma nova camada de compatibilidade para oferecer suporte ao Python 3.9: camada que seria eliminada assim que o suporte ao Python 2.7 fosse eliminado (em breve), escreveu Stinner.
Os mantenedores do Python, portanto, mantiveram algumas camadas importantes de compatibilidade 2.7 que agora vão sair na próxima versão, Python 3.10.
Aliases para classes básicas abstratas no módulo de coleções, como coleções. Alias de mapeamento para coleções.abc.Mapping, são mantidos para uma última versão para compatibilidade com versões anteriores. Eles serão removidos do Python 3.10, observa o Python Software Foundation.